From 282d2ab3e0fb3a74f32160a231225773001acd14 Mon Sep 17 00:00:00 2001 From: grm Date: Mon, 14 Sep 2026 00:51:19 +0300 Subject: Drop the single-database split and re-baseline the control migrations MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Every deployment has been through the per-blog split, so the code that performed it (split.go, control migrations 00002–00007) is dead weight, and a fresh install replaying six migrations only to drop the tables again was silly. The control chain is now a single 00001_init.sql with the final users and blogs shape, matching the blog chain. Goose ignores versions recorded in the database that no longer exist in the source, but refuses a future migration numbered below the database's highest version. Databases that went through the split therefore need `DELETE FROM goose_db_version WHERE version_id > 1` once; README and AGENTS.md say so. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01Sd8UPWrvyYCLj97JexNw3A --- internal/db/migrations/control/00007_drop_content.sql | 9 --------- 1 file changed, 9 deletions(-) delete mode 100644 internal/db/migrations/control/00007_drop_content.sql (limited to 'internal/db/migrations/control/00007_drop_content.sql') diff --git a/internal/db/migrations/control/00007_drop_content.sql b/internal/db/migrations/control/00007_drop_content.sql deleted file mode 100644 index 9daa1ac..0000000 --- a/internal/db/migrations/control/00007_drop_content.sql +++ /dev/null @@ -1,9 +0,0 @@ --- +goose Up --- The content now lives in the per-blog databases (see 00006 in split.go); --- the control database keeps only users and the blog registry. -DROP TABLE menu_items, modules, sections, images, posts, pages; -ALTER TABLE blogs DROP COLUMN title, DROP COLUMN tagline, DROP COLUMN theme, DROP COLUMN updated_at; -ALTER TABLE blogs ALTER COLUMN db_name SET NOT NULL; - --- +goose Down --- Not reversible: the content is gone from this database. Restore from a backup instead. -- cgit v1.2.3