From 6ed63abecda3733d0e73aa35412a4675f10fe198 Mon Sep 17 00:00:00 2001 From: Aaron Reisman Date: Fri, 3 Dec 2021 19:55:01 -0800 Subject: [PATCH] Update 20191206030411_create_active_storage_variant_records.rb In the cast of bootstrapping a project for the first time without active storage, when running `rails app:update` this migration would result in trying to create the table twice. --- ...030411_create_active_storage_variant_records.rb | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/activestorage/db/update_migrate/20191206030411_create_active_storage_variant_records.rb b/activestorage/db/update_migrate/20191206030411_create_active_storage_variant_records.rb index 804ae76f6f..f4948e87a0 100644 --- a/activestorage/db/update_migrate/20191206030411_create_active_storage_variant_records.rb +++ b/activestorage/db/update_migrate/20191206030411_create_active_storage_variant_records.rb @@ -1,12 +1,14 @@ class CreateActiveStorageVariantRecords < ActiveRecord::Migration[6.0] def change - # Use Active Record's configured type for primary key - create_table :active_storage_variant_records, id: primary_key_type do |t| - t.belongs_to :blob, null: false, index: false, type: blobs_primary_key_type - t.string :variation_digest, null: false + unless table_exists?(:active_storage_variant_records) + # Use Active Record's configured type for primary key + create_table :active_storage_variant_records, id: primary_key_type do |t| + t.belongs_to :blob, null: false, index: false, type: blobs_primary_key_type + t.string :variation_digest, null: false - t.index %i[ blob_id variation_digest ], name: "index_active_storage_variant_records_uniqueness", unique: true - t.foreign_key :active_storage_blobs, column: :blob_id + t.index %i[ blob_id variation_digest ], name: "index_active_storage_variant_records_uniqueness", unique: true + t.foreign_key :active_storage_blobs, column: :blob_id + end end end