diff --git a/backend/migrations/20251121144314_migrate_instance_ducklake_catalogs.down.sql b/backend/migrations/20251121144314_migrate_instance_ducklake_catalogs.down.sql index b5cbb659b1..ef701f2817 100644 --- a/backend/migrations/20251121144314_migrate_instance_ducklake_catalogs.down.sql +++ b/backend/migrations/20251121144314_migrate_instance_ducklake_catalogs.down.sql @@ -1,9 +1,9 @@ UPDATE global_settings SET value = jsonb_build_object( 'status', ( - SELECT jsonb_object_agg( - key, - value - 'tag' + SELECT COALESCE( + jsonb_object_agg(key, value - 'tag'), + '{}'::jsonb ) FROM jsonb_each(value->'databases') ), diff --git a/backend/migrations/20251121144314_migrate_instance_ducklake_catalogs.up.sql b/backend/migrations/20251121144314_migrate_instance_ducklake_catalogs.up.sql index 88f293ae78..047ed6ec6c 100644 --- a/backend/migrations/20251121144314_migrate_instance_ducklake_catalogs.up.sql +++ b/backend/migrations/20251121144314_migrate_instance_ducklake_catalogs.up.sql @@ -5,22 +5,24 @@ ALTER ROLE ducklake_user RENAME TO custom_instance_user; +-- Rename to more generic names UPDATE global_settings SET name = 'custom_instance_pg_databases', value = jsonb_build_object( 'user_pwd', value->'ducklake_user_pg_pwd', - 'status', value->'instance_catalog_db_status' + 'databases', value->'instance_catalog_db_status' ) WHERE name = 'ducklake_settings'; +-- Add ducklake tag to existing databases UPDATE global_settings SET value = jsonb_build_object( 'databases', ( - SELECT jsonb_object_agg( - key, - value || jsonb_build_object('tag', 'ducklake') - ) - FROM jsonb_each(value->'status') + SELECT COALESCE( + jsonb_object_agg(key, value || jsonb_build_object('tag', 'ducklake')), + '{}'::jsonb + ) + FROM jsonb_each(value->'databases') ), 'user_pwd', value->'user_pwd' )