| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
44/5000
Checking for the existence of only one table
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*ActiveRecord::StatementInvalid: PG::UndefinedTable: ERROR: relation "active_storage_attachments" does not exist*
Updating to rails 6.0.0.beta3 if the command rake app:update is used a new migration file is generated:
```ruby
# db/migrate/add_foreign_key_constraint_to_active_storage_attachments_for_blob_id.active_storage.rb
class AddForeignKeyConstraintToActiveStorageAttachmentsForBlobId < ActiveRecord::Migration[6.0]
def up
unless foreign_key_exists?(:active_storage_attachments, column: :blob_id)
add_foreign_key :active_storage_attachments, :active_storage_blobs, column: :blob_id
end
end
end
```
**If the project does not have previously installed active storage** this mgiration causes an error:
ActiveRecord::StatementInvalid: PG::UndefinedTable: ERROR: relation "active_storage_attachments" does not exist
**Error output:**
PG::UndefinedTable: ERROR: relation "active_storage_attachments" does not exist
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/postgresql/database_statements.rb:90:in `async_exec'
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/postgresql/database_statements.rb:90:in `block (2 levels) in execute'
activesupport-6.0.0.beta3/lib/active_support/dependencies/interlock.rb:48:in `block in permit_concurrent_loads'
activesupport-6.0.0.beta3/lib/active_support/concurrency/share_lock.rb:187:in `yield_shares'
activesupport-6.0.0.beta3/lib/active_support/dependencies/interlock.rb:47:in `permit_concurrent_loads'
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/postgresql/database_statements.rb:89:in `block in execute'
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/abstract_adapter.rb:643:in `block (2 levels) in log'
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/abstract_adapter.rb:642:in `block in log'
activesupport-6.0.0.beta3/lib/active_support/notifications/instrumenter.rb:23:in `instrument'
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/abstract_adapter.rb:633:in `log'
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/postgresql/database_statements.rb:88:in `execute'
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/abstract/schema_statements.rb:977:in `add_foreign_key'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:875:in `block in method_missing'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:843:in `block in say_with_time'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:843:in `say_with_time'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:864:in `method_missing'
/db/migrate/20190315102607_add_foreign_key_constraint_to_active_storage_attachments_for_blob_id.active_storage.rb:5:in `up'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:816:in `exec_migration'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:797:in `block (2 levels) in migrate'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:796:in `block in migrate'
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/abstract/connection_pool.rb:416:in `with_connection'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:795:in `migrate'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:985:in `migrate'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:1293:in `block in execute_migration_in_transaction'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:1344:in `block in ddl_transaction'
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/abstract/database_statements.rb:265:in `block in transaction'
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/abstract/transaction.rb:272:in `block in within_new_transaction'
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/abstract/transaction.rb:270:in `within_new_transaction'
activerecord-6.0.0.beta3/lib/active_record/connection_adapters/abstract/database_statements.rb:265:in `transaction'
activerecord-6.0.0.beta3/lib/active_record/transactions.rb:212:in `transaction'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:1344:in `ddl_transaction'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:1292:in `execute_migration_in_transaction'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:1264:in `block in migrate_without_lock'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:1263:in `each'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:1263:in `migrate_without_lock'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:1211:in `block in migrate'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:1364:in `with_advisory_lock'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:1211:in `migrate'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:1044:in `up'
activerecord-6.0.0.beta3/lib/active_record/migration.rb:1019:in `migrate'
activerecord-6.0.0.beta3/lib/active_record/tasks/database_tasks.rb:191:in `migrate'
activerecord-6.0.0.beta3/lib/active_record/railties/databases.rake:78:in `block (3 levels) in <main>'
activerecord-6.0.0.beta3/lib/active_record/railties/databases.rake:76:in `each'
activerecord-6.0.0.beta3/lib/active_record/railties/databases.rake:76:in `block (2 levels) in <main>'
railties-6.0.0.beta3/lib/rails/commands/rake/rake_command.rb:23:in `block in perform'
railties-6.0.0.beta3/lib/rails/commands/rake/rake_command.rb:20:in `perform'
railties-6.0.0.beta3/lib/rails/command.rb:48:in `invoke'
railties-6.0.0.beta3/lib/rails/commands.rb:18:in `<main>'
bootsnap-1.4.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `require'
bootsnap-1.4.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `block in require_with_bootsnap_lfi'
bootsnap-1.4.1/lib/bootsnap/load_path_cache/loaded_features_index.rb:83:in `register'
bootsnap-1.4.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:20:in `require_with_bootsnap_lfi'
bootsnap-1.4.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:29:in `require'
activesupport-6.0.0.beta3/lib/active_support/dependencies.rb:297:in `block in require'
activesupport-6.0.0.beta3/lib/active_support/dependencies.rb:263:in `load_dependency'
activesupport-6.0.0.beta3/lib/active_support/dependencies.rb:297:in `require'
bin/rails:4:in `<main>'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We need this in order to be able to add this migration for users that
use ActiveStorage during update their apps from Rails 5.2 to Rails 6.0.
Related to #33405
`rake app:update` should update active_storage
`rake app:update` should execute `rake active_storage:update`
if it is used in the app that is being updated.
It will add new active_storage's migrations to users' apps during update Rails.
Context https://github.com/rails/rails/pull/33405#discussion_r204239399
Also, see a related discussion in the Campfire:
https://3.basecamp.com/3076981/buckets/24956/chats/12416418@1236713081
|
| |
|
| |
|
| |
|
|
|
|
|
| |
The activestorage's migration is used as template for apps
Related to #30348
|
|\
| |
| | |
Use frozen string literal in Active Storage
|
| | |
|
|/
|
|
|
|
| |
If created active storage tables by mysql2 or postgresql adapters, a
primary key is defined as a bigint. It should be used `references` to
the reference columns to respect primary key type.
|
|
|
|
| |
These columns aren't intended nullable.
|
|
* Add migrations per rails engine conventions
* Fix failing tests
|