sonika-shah 5ccc0c5a2a
Improvement #19065 : Support removing existing enumKeys (for enum type custom property) (#19054)
* Improvement : Support removing existing enumKeys (for enum type custom property)

* initial implementation of background job job runner for enum cleanup

* fix postgres query

* ui: allow existing enum value updates in EditCustomPropertyModal

* create BackgroundJob to use jsonSchema

* feat: add socket event handling for background job part1

* fix(i18n): remove trailing spaces in Galician language JSON file

* refactor to use jsonSchema

* feat(ui): show browser notification for custom property update

* feat(utils): add getCustomPropertyEntityPathname function and tests

* change enumCleanup trigger condition

* feat(i18n): add enum property update message to multiple language JSON files

* enhancement : improve execution flow and better exception handling with test

---------

Co-authored-by: Sachin Chaurasiya <sachinchaurasiyachotey87@gmail.com>
Co-authored-by: Sriharsha Chintalapani <harshach@users.noreply.github.com>
2025-01-07 19:25:59 -08:00

47 lines
1.6 KiB
SQL

-- add timestamp index for test case result reindex performance
CREATE INDEX idx_timestamp_desc ON data_quality_data_time_series (timestamp DESC);
CREATE TABLE background_jobs (
id BIGSERIAL PRIMARY KEY,
jobType VARCHAR(256) NOT NULL,
methodName VARCHAR(256) NOT NULL,
jobArgs JSONB NOT NULL,
status VARCHAR(50) NOT NULL DEFAULT 'PENDING',
createdBy VARCHAR(256) NOT NULL,
createdAt BIGINT NOT NULL DEFAULT (EXTRACT(EPOCH FROM NOW()) * 1000)::BIGINT,
updatedAt BIGINT NOT NULL DEFAULT (EXTRACT(EPOCH FROM NOW()) * 1000)::BIGINT
);
CREATE INDEX idx_status_createdAt ON background_jobs (status, createdAt);
CREATE INDEX idx_createdBy ON background_jobs (createdBy);
CREATE INDEX idx_status ON background_jobs (status);
CREATE INDEX idx_jobType ON background_jobs (jobType);
CREATE INDEX idx_updatedAt ON background_jobs (updatedAt);
-- rename executable -> basic for test suites
UPDATE test_suite
SET json = jsonb_set(
json::jsonb #- '{executable}',
'{basic}',
(json #> '{executable}')::jsonb,
true
)
WHERE json #>> '{executable}' IS NOT NULL;
-- rename executableEntityReference -> basicEntityReference for test suites
UPDATE test_suite
SET json = jsonb_set(
json::jsonb #- '{executableEntityReference}',
'{basicEntityReference}',
(json #> '{executableEntityReference}')::jsonb,
true
)
WHERE json #>> '{executableEntityReference}' IS NOT NULL;
-- clean up the testSuites
UPDATE test_case SET json = json::jsonb #- '{testSuites}';
-- clean up the testSuites in the version history too
UPDATE entity_extension SET json = json::jsonb #- '{testSuites}' WHERE jsonSchema = 'testCase';