fix: Migrations - add operator parameter to test_definition for custom SQL queries in MySQL and Postgres (#21044)

(cherry picked from commit 49de0119cf696366f55ef9d4da7adf82f442d168)
This commit is contained in:
Ayush Shah 2025-04-30 14:57:20 +05:30 committed by OpenMetadata Release Bot
parent d7bdc1bdc4
commit 890e0ee22c
2 changed files with 38 additions and 0 deletions

View File

@ -0,0 +1,18 @@
UPDATE test_definition
SET json = JSON_ARRAY_INSERT(
json,
'$.parameterDefinition[2]',
JSON_OBJECT(
'name', 'operator',
'displayName', 'Operator',
'description', 'Operator to use to compare the result of the custom SQL query to the threshold.',
'dataType', 'STRING',
'required', false,
'optionValues', JSON_ARRAY('==', '>', '>=', '<', '<=', '!=')
)
)
WHERE NOT JSON_CONTAINS(
JSON_EXTRACT(json, '$.parameterDefinition[*].name'),
JSON_QUOTE('operator')
) AND name = 'tableCustomSQLQuery';

View File

@ -0,0 +1,20 @@
UPDATE test_definition
SET
json = jsonb_insert(
json,
'{parameterDefinition, 2}',
jsonb_build_object(
'name', 'operator',
'displayName', 'Operator',
'description', 'Operator to use to compare the result of the custom SQL query to the threshold.',
'dataType', 'STRING',
'required', false,
'optionValues', jsonb_build_array('==', '>', '>=', '<', '<=', '!=')
)
)
WHERE
name = 'tableCustomSQLQuery'
AND NOT jsonb_path_exists(
json,
'$.parameterDefinition[*] ? (@.name == "operator")'
);