From 28960db85c695897236ab29087b53f620759133b Mon Sep 17 00:00:00 2001 From: multiple creatures Date: Sat, 15 Feb 2020 12:58:07 -0600 Subject: add missing null constaint & backfill `statuses.hidden` column to `false` --- db/migrate/20200215021014_backfill_statuses_hidden.rb | 8 ++++++++ .../20200215021014_set_null_constraint_on_statuses_hidden.rb | 7 ------- db/migrate/20200215021731_set_statuses_hidden_not_null.rb | 7 +++++++ .../20200215021731_validate_set_default_unhidden_on_statuses.rb | 7 ------- db/migrate/20200215021732_validate_statuses_hidden_not_null.rb | 7 +++++++ 5 files changed, 22 insertions(+), 14 deletions(-) create mode 100644 db/migrate/20200215021014_backfill_statuses_hidden.rb delete mode 100644 db/migrate/20200215021014_set_null_constraint_on_statuses_hidden.rb create mode 100644 db/migrate/20200215021731_set_statuses_hidden_not_null.rb delete mode 100644 db/migrate/20200215021731_validate_set_default_unhidden_on_statuses.rb create mode 100644 db/migrate/20200215021732_validate_statuses_hidden_not_null.rb (limited to 'db/migrate') diff --git a/db/migrate/20200215021014_backfill_statuses_hidden.rb b/db/migrate/20200215021014_backfill_statuses_hidden.rb new file mode 100644 index 000000000..59e2e40ac --- /dev/null +++ b/db/migrate/20200215021014_backfill_statuses_hidden.rb @@ -0,0 +1,8 @@ +class BackfillStatusesHidden < ActiveRecord::Migration[5.2] + disable_ddl_transaction! + + def change + Rails.logger.info("Setting all statuses unhidden by default. This may take a really long time.") + Status.in_batches.update_all(hidden: false) + end +end diff --git a/db/migrate/20200215021014_set_null_constraint_on_statuses_hidden.rb b/db/migrate/20200215021014_set_null_constraint_on_statuses_hidden.rb deleted file mode 100644 index 70b3a764c..000000000 --- a/db/migrate/20200215021014_set_null_constraint_on_statuses_hidden.rb +++ /dev/null @@ -1,7 +0,0 @@ -class SetNullConstraintOnStatusesHidden < ActiveRecord::Migration[5.2] - def change - safety_assured do - execute 'ALTER TABLE "statuses" ADD CONSTRAINT "statuses_hidden_null" CHECK ("hidden" IS NOT NULL) NOT VALID' - end - end -end diff --git a/db/migrate/20200215021731_set_statuses_hidden_not_null.rb b/db/migrate/20200215021731_set_statuses_hidden_not_null.rb new file mode 100644 index 000000000..d16dc9f38 --- /dev/null +++ b/db/migrate/20200215021731_set_statuses_hidden_not_null.rb @@ -0,0 +1,7 @@ +class SetStatusesHiddenNotNull < ActiveRecord::Migration[5.2] + def change + safety_assured do + execute 'ALTER TABLE "statuses" ADD CONSTRAINT "statuses_hidden_null" CHECK ("hidden" IS NOT NULL) NOT VALID' + end + end +end diff --git a/db/migrate/20200215021731_validate_set_default_unhidden_on_statuses.rb b/db/migrate/20200215021731_validate_set_default_unhidden_on_statuses.rb deleted file mode 100644 index b87b61dcc..000000000 --- a/db/migrate/20200215021731_validate_set_default_unhidden_on_statuses.rb +++ /dev/null @@ -1,7 +0,0 @@ -class ValidateSetDefaultUnhiddenOnStatuses < ActiveRecord::Migration[5.2] - def change - safety_assured do - execute 'ALTER TABLE "statuses" VALIDATE CONSTRAINT "statuses_hidden_null"' - end - end -end diff --git a/db/migrate/20200215021732_validate_statuses_hidden_not_null.rb b/db/migrate/20200215021732_validate_statuses_hidden_not_null.rb new file mode 100644 index 000000000..0822ff73c --- /dev/null +++ b/db/migrate/20200215021732_validate_statuses_hidden_not_null.rb @@ -0,0 +1,7 @@ +class ValidateStatusesHiddenNotNull < ActiveRecord::Migration[5.2] + def change + safety_assured do + execute 'ALTER TABLE "statuses" VALIDATE CONSTRAINT "statuses_hidden_null"' + end + end +end -- cgit