You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
lemmy/migrations/2022-07-07-182650_comment_l.../down.sql

46 lines
957 B
SQL

ALTER TABLE comment
ADD COLUMN parent_id integer;
-- Constraints and index
ALTER TABLE comment
ADD CONSTRAINT comment_parent_id_fkey FOREIGN KEY (parent_id) REFERENCES comment (id) ON UPDATE CASCADE ON DELETE CASCADE;
CREATE INDEX idx_comment_parent ON comment (parent_id);
-- Update the parent_id column
-- subpath(subpath(0, -1), -1) gets the immediate parent but it fails null checks
UPDATE
comment
SET
parent_id = cast(ltree2text (nullif (subpath (nullif (subpath (path, 0, -1), '0'), -1), '0')) AS INTEGER);
ALTER TABLE comment
DROP COLUMN path;
ALTER TABLE comment_aggregates
DROP COLUMN child_count;
DROP EXTENSION ltree;
-- Add back in the read column
ALTER TABLE comment
ADD COLUMN read boolean DEFAULT FALSE NOT NULL;
UPDATE
comment c
SET
read = cr.read
FROM
comment_reply cr
WHERE
cr.comment_id = c.id;
CREATE VIEW comment_alias_1 AS
SELECT
*
FROM
comment;
DROP TABLE comment_reply;