-
Notifications
You must be signed in to change notification settings - Fork 24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Escape hatch for unsafe migrations #94
Comments
For the record, I found my way around using 3 distinct commands: add_column :slots, :variation_id, :integer
add_foreign_key :slots, :variations, validate: true
add_index :slots, :variation_id, algorithm: :default |
Hey @guewen, thanks for taking the time to open this issue. It's indeed not possible today. Do you feel like giving a try at implementing it? |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Hi!
Some migrations unfortunately cannot be run safely and are then impossible to run.
When using a partitioned table on PostgreSQL, this migration, where
slots
is the partitioned table, will fail because of 2 Postgres errors:ActiveRecord::StatementInvalid: PG::WrongObjectType: ERROR: cannot add NOT VALID foreign key on partitioned table "slots" referencing relation "variations"
: sincevalidate: false
is forcedPG::FeatureNotSupported: ERROR: cannot create index on partitioned table "stock_slots" concurrently
: sincealgorithm: :concurrently
is forcedIs there a way to explicitly disable the safeness in a block? If not, what about a block:
Telling: I know it is not safe, and then it can be caught before deployment to take appropriate measures.
The text was updated successfully, but these errors were encountered: