feat: move compliance persistence to temporary tables

This commit is contained in:
Sérgio Salgado 2021-04-27 15:37:23 +01:00 committed by Josh Harvey
parent aa7252dfce
commit 5c68772b46

View file

@ -38,27 +38,28 @@ exports.up = function (next) {
expire TIMESTAMPTZ NOT NULL DEFAULT now() + interval '${constants.REGISTRATION_TOKEN_EXPIRATION_TIME}' expire TIMESTAMPTZ NOT NULL DEFAULT now() + interval '${constants.REGISTRATION_TOKEN_EXPIRATION_TIME}'
)`, )`,
// migrate values from customers which reference user_tokens for data persistence // migrate values from customers which reference user_tokens for data persistence
`ALTER TABLE customers ADD COLUMN sms_override_by_old TEXT`, `CREATE TABLE customer_compliance_persistence (
`ALTER TABLE customers ADD COLUMN id_card_data_override_by_old TEXT`, customer_id UUID NOT NULL PRIMARY KEY REFERENCES customers(id),
`ALTER TABLE customers ADD COLUMN id_card_photo_override_by_old TEXT`, sms_override_by_old TEXT,
`ALTER TABLE customers ADD COLUMN front_camera_override_by_old TEXT`, id_card_data_override_by_old TEXT,
`ALTER TABLE customers ADD COLUMN sanctions_override_by_old TEXT`, id_card_photo_override_by_old TEXT,
`ALTER TABLE customers ADD COLUMN authorized_override_by_old TEXT`, front_camera_override_by_old TEXT,
`ALTER TABLE customers ADD COLUMN us_ssn_override_by_old TEXT`, sanctions_override_by_old TEXT,
`UPDATE customers SET sms_override_by_old=ut.name FROM user_tokens ut authorized_override_by_old TEXT,
WHERE customers.sms_override_by=ut.token`, us_ssn_override_by_old TEXT
`UPDATE customers SET id_card_data_override_by_old=ut.name FROM user_tokens ut )`,
WHERE customers.id_card_data_override_by=ut.token`, `INSERT INTO customer_compliance_persistence (
`UPDATE customers SET id_card_photo_override_by_old=ut.name FROM user_tokens ut customer_id,
WHERE customers.id_card_photo_override_by=ut.token`, sms_override_by_old,
`UPDATE customers SET front_camera_override_by_old=ut.name FROM user_tokens ut id_card_data_override_by_old,
WHERE customers.front_camera_override_by=ut.token`, id_card_photo_override_by_old,
`UPDATE customers SET sanctions_override_by_old=ut.name FROM user_tokens ut front_camera_override_by_old,
WHERE customers.sanctions_override_by=ut.token`, sanctions_override_by_old,
`UPDATE customers SET authorized_override_by_old=ut.name FROM user_tokens ut authorized_override_by_old,
WHERE customers.authorized_override_by=ut.token`, us_ssn_override_by_old
`UPDATE customers SET us_ssn_override_by_old=ut.name FROM user_tokens ut ) SELECT id, sms_override_by, id_card_data_override_by, id_card_photo_override_by,
WHERE customers.us_ssn_override_by=ut.token`, front_camera_override_by, sanctions_override_by, authorized_override_by, us_ssn_override_by
FROM customers`,
`ALTER TABLE customers DROP COLUMN sms_override_by`, `ALTER TABLE customers DROP COLUMN sms_override_by`,
`ALTER TABLE customers DROP COLUMN id_card_data_override_by`, `ALTER TABLE customers DROP COLUMN id_card_data_override_by`,
`ALTER TABLE customers DROP COLUMN id_card_photo_override_by`, `ALTER TABLE customers DROP COLUMN id_card_photo_override_by`,
@ -74,9 +75,14 @@ exports.up = function (next) {
`ALTER TABLE customers ADD COLUMN authorized_override_by UUID REFERENCES users(id)`, `ALTER TABLE customers ADD COLUMN authorized_override_by UUID REFERENCES users(id)`,
`ALTER TABLE customers ADD COLUMN us_ssn_override_by UUID REFERENCES users(id)`, `ALTER TABLE customers ADD COLUMN us_ssn_override_by UUID REFERENCES users(id)`,
// migrate values from compliance_overrides which reference user_tokens for data persistence // migrate values from compliance_overrides which reference user_tokens for data persistence
`ALTER TABLE compliance_overrides ADD COLUMN override_by_old TEXT`, `CREATE TABLE compliance_overrides_persistence (
`UPDATE compliance_overrides SET override_by_old=ut.name FROM user_tokens ut override_id UUID NOT NULL PRIMARY KEY REFERENCES compliance_overrides(id),
WHERE compliance_overrides.override_by=ut.token`, override_by_old TEXT
)`,
`INSERT INTO compliance_overrides_persistence (
override_id,
override_by_old
) SELECT id, override_by FROM compliance_overrides`,
`ALTER TABLE compliance_overrides DROP COLUMN override_by`, `ALTER TABLE compliance_overrides DROP COLUMN override_by`,
`ALTER TABLE compliance_overrides ADD COLUMN override_by UUID REFERENCES users(id)`, `ALTER TABLE compliance_overrides ADD COLUMN override_by UUID REFERENCES users(id)`,
`DROP TABLE IF EXISTS one_time_passes`, `DROP TABLE IF EXISTS one_time_passes`,