pastebin/migrations/2019-03-08-081008_remove-revision-system/down.sql
Konrad Borowski 741c4e3017 Remove revision system
It's unnecessary with Markdown implementation and prevents
improvements to the future features.
2019-03-08 09:38:01 +01:00

28 lines
866 B
SQL

CREATE TABLE paste_revisions (
paste_revision_id serial PRIMARY KEY,
created_at timestamp with time zone NOT NULL DEFAULT now(),
paste_id int NOT NULL REFERENCES pastes
);
CREATE INDEX ON paste_revisions(paste_id, created_at DESC);
CREATE TABLE paste_contents (
paste_content_id serial PRIMARY KEY,
paste_revision_id int NOT NULL REFERENCES paste_revisions,
language_id int NOT NULL REFERENCES languages,
paste text NOT NULL
);
CREATE INDEX ON paste_contents(paste_revision_id);
INSERT INTO paste_revisions (created_at, paste_id)
SELECT created_at, paste_id FROM pastes;
INSERT INTO paste_contents (paste_revision_id, language_id, paste)
SELECT paste_revision_id, language_id, paste FROM pastes NATURAL JOIN paste_revisions;
ALTER TABLE pastes
DROP COLUMN created_at,
DROP COLUMN language_id,
DROP COLUMN paste;