From b9ad3e9c75174d8efa1657abb14d40f9d82b2a92 Mon Sep 17 00:00:00 2001 From: Pierre-Yves Chibon Date: Mon, 8 Feb 2021 15:54:46 +0100 Subject: [PATCH] Add logic to fix the foreign key Signed-off-by: Pierre-Yves Chibon --- scripts/migration_timescaledb.sql | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/scripts/migration_timescaledb.sql b/scripts/migration_timescaledb.sql index 7aec1ef..eb0a264 100644 --- a/scripts/migration_timescaledb.sql +++ b/scripts/migration_timescaledb.sql @@ -63,7 +63,18 @@ CREATE INDEX messages2_datanommer_timestamp_topic_idx ON public.messages2 USING ALTER TABLE user_messages DROP CONSTRAINT user_messages_msg_fkey; -ALTER TABLE user_messages ADD CONSTRAINT user_messages_msg_fkey FOREIGN KEY (msg) REFERENCES messages2(id); +ALTER TABLE user_messages ADD "timestamp" timestamp without time zone; +UPDATE user_messages +SET "timestamp" = messages2.timestamp +FROM messages2 +WHERE messages2.id = user_messages.msg; +ALTER TABLE user_messages ADD CONSTRAINT user_messages_msg_fkey FOREIGN KEY (msg, "timestamp") REFERENCES messages2(id, "timestamp"); + ALTER TABLE package_messages DROP CONSTRAINT package_messages_msg_fkey; -ALTER TABLE package_messages ADD CONSTRAINT package_messages_msg_fkey FOREIGN KEY (msg) REFERENCES messages2(id); +ALTER TABLE package_messages ADD "timestamp" timestamp without time zone; +UPDATE package_messages +SET "timestamp" = messages2.timestamp +FROM messages2 +WHERE messages2.id = package_messages.msg; +ALTER TABLE package_messages ADD CONSTRAINT package_messages_msg_fkey FOREIGN KEY (msg, "timestamp") REFERENCES messages2(id, "timestamp");