From eddf059b9119c6727a2a2291e5a1bcc4d87a42ab Mon Sep 17 00:00:00 2001 From: Zach Hoffman Date: Mon, 28 Nov 2022 11:30:14 -0700 Subject: [PATCH 1/2] Use strings for JSONB string comparisons --- .../2022110908494015_ds_active_flag.down.sql | 26 ++++----------- .../2022110908494015_ds_active_flag.up.sql | 32 +++++-------------- 2 files changed, 14 insertions(+), 44 deletions(-) diff --git a/traffic_ops/app/db/migrations/2022110908494015_ds_active_flag.down.sql b/traffic_ops/app/db/migrations/2022110908494015_ds_active_flag.down.sql index f782558a18..2ec850363c 100644 --- a/traffic_ops/app/db/migrations/2022110908494015_ds_active_flag.down.sql +++ b/traffic_ops/app/db/migrations/2022110908494015_ds_active_flag.down.sql @@ -32,22 +32,15 @@ DROP TYPE public.ds_active_state; UPDATE public.deliveryservice_request SET - deliveryservice = jsonb_set(deliveryservice, '{active}', 'true') + deliveryservice = deliveryservice || '{"active": true}' WHERE - deliveryservice IS NOT NULL - AND - deliveryservice ? 'active' - AND deliveryservice ->> 'active' = 'ACTIVE'; UPDATE public.deliveryservice_request SET - deliveryservice = jsonb_set(deliveryservice, '{active}', 'false') + deliveryservice = deliveryservice || '{"active": false}' WHERE - deliveryservice IS NOT NULL - AND - deliveryservice ? 'active' - AND ( + ( deliveryservice ->> 'active' = 'PRIMED' OR deliveryservice ->> 'active' = 'INACTIVE' @@ -55,22 +48,15 @@ WHERE UPDATE public.deliveryservice_request SET - original = jsonb_set(original, '{active}', 'true') + original = original || '{"active": true}' WHERE - original IS NOT NULL - AND - original ? 'active' - AND original ->> 'active' = 'ACTIVE'; UPDATE public.deliveryservice_request SET - original = jsonb_set(original, '{active}', 'false') + original = original || '{"active": false}' WHERE - original IS NOT NULL - AND - original ? 'active' - AND ( + ( original ->> 'active' = 'PRIMED' OR original ->> 'active' = 'INACTIVE' diff --git a/traffic_ops/app/db/migrations/2022110908494015_ds_active_flag.up.sql b/traffic_ops/app/db/migrations/2022110908494015_ds_active_flag.up.sql index 98d50d142c..54d640eea3 100644 --- a/traffic_ops/app/db/migrations/2022110908494015_ds_active_flag.up.sql +++ b/traffic_ops/app/db/migrations/2022110908494015_ds_active_flag.up.sql @@ -32,40 +32,24 @@ ALTER TABLE public.deliveryservice RENAME COLUMN active_state TO active; UPDATE public.deliveryservice_request SET - deliveryservice = jsonb_set(deliveryservice, '{active}', '"ACTIVE"') + deliveryservice = deliveryservice || '{"active": "ACTIVE"}' WHERE - deliveryservice IS NOT NULL - AND - deliveryservice ? 'active' - AND - (deliveryservice -> 'active')::boolean IS TRUE; + deliveryservice ->> 'active' = 'true'; UPDATE public.deliveryservice_request SET - deliveryservice = jsonb_set(deliveryservice, '{active}', '"PRIMED"') + deliveryservice = deliveryservice || '{"active": "PRIMED"}' WHERE - deliveryservice IS NOT NULL - AND - deliveryservice ? 'active' - AND - (deliveryservice -> 'active')::boolean IS FALSE; + deliveryservice ->> 'active' = 'false'; UPDATE public.deliveryservice_request SET - original = jsonb_set(original, '{active}', '"ACTIVE"') + original = original || '{"active": "ACTIVE"}' WHERE - original IS NOT NULL - AND - original ? 'active' - AND - (original -> 'active')::boolean IS TRUE; + original ->> 'active' = 'true'; UPDATE public.deliveryservice_request SET - original = jsonb_set(original, '{active}', '"PRIMED"') + original = original || '{"active": "PRIMED"}' WHERE - original IS NOT NULL - AND - original ? 'active' - AND - (original -> 'active')::boolean IS FALSE; + original ->> 'active' = 'false'; From 5279d58510d75ba082d67272880ad857c302bae8 Mon Sep 17 00:00:00 2001 From: ocket8888 Date: Mon, 28 Nov 2022 15:51:53 -0700 Subject: [PATCH 2/2] Update DSR timestamps to RFC3339 (#119) --- .../2022110908494015_ds_active_flag.down.sql | 13 +++++++++++++ .../2022110908494015_ds_active_flag.up.sql | 12 ++++++++++++ 2 files changed, 25 insertions(+) diff --git a/traffic_ops/app/db/migrations/2022110908494015_ds_active_flag.down.sql b/traffic_ops/app/db/migrations/2022110908494015_ds_active_flag.down.sql index 2ec850363c..01295ecbe1 100644 --- a/traffic_ops/app/db/migrations/2022110908494015_ds_active_flag.down.sql +++ b/traffic_ops/app/db/migrations/2022110908494015_ds_active_flag.down.sql @@ -61,3 +61,16 @@ WHERE OR original ->> 'active' = 'INACTIVE' ); + + +UPDATE public.deliveryservice_request +SET + original = original || CAST('{"lastUpdated": "' || replace(replace(original ->> 'lastUpdated', 'T', ' '), 'Z', '+00') || '"}' AS jsonb) +WHERE + original ->> 'lastUpdated' IS NOT NULL; + +UPDATE public.deliveryservice_request +SET + deliveryservice = deliveryservice || CAST('{"lastUpdated": "' || replace(replace(deliveryservice ->> 'lastUpdated', 'T', ' '), 'Z', '+00') || '"}' AS jsonb) +WHERE + deliveryservice ->> 'lastUpdated' IS NOT NULL; diff --git a/traffic_ops/app/db/migrations/2022110908494015_ds_active_flag.up.sql b/traffic_ops/app/db/migrations/2022110908494015_ds_active_flag.up.sql index 54d640eea3..5d7e59b8ff 100644 --- a/traffic_ops/app/db/migrations/2022110908494015_ds_active_flag.up.sql +++ b/traffic_ops/app/db/migrations/2022110908494015_ds_active_flag.up.sql @@ -53,3 +53,15 @@ SET original = original || '{"active": "PRIMED"}' WHERE original ->> 'active' = 'false'; + +UPDATE public.deliveryservice_request +SET + original = original || CAST('{"lastUpdated": "' || replace(replace(original ->> 'lastUpdated', ' ', 'T'), '+00', 'Z') || '"}' AS jsonb) +WHERE + original ->> 'lastUpdated' IS NOT NULL; + +UPDATE public.deliveryservice_request +SET + deliveryservice = deliveryservice || CAST('{"lastUpdated": "' || replace(replace(deliveryservice ->> 'lastUpdated', ' ', 'T'), '+00', 'Z') || '"}' AS jsonb) +WHERE + deliveryservice ->> 'lastUpdated' IS NOT NULL;