ActiveRecord::InvalidForeignKey: PG::ForeignKeyViolation: ERROR: insert or update on table "statuses" violates foreign key constraint "fk_rails_94a6f70399"
DETAIL: Key (in_reply_to_id)=(5949) is not present in table "statuses".
: ALTER TABLE "statuses" ADD CONSTRAINT "fk_rails_94a6f70399"
FOREIGN KEY ("in_reply_to_id")
REFERENCES "statuses" ("id")
ON DELETE SET NULL
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/postgresql/database_statements.rb:97:in
async_exec'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/postgresql/database_statements.rb:97:in
block (2 levels) in execute'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.1/lib/active_support/dependencies/interlock.rb:46:in
block in permit_concurrent_loads'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.1/lib/active_support/concurrency/share_lock.rb:185:in
yield_shares'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.1/lib/active_support/dependencies/interlock.rb:45:in
permit_concurrent_loads'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/postgresql/database_statements.rb:96:in
block in execute'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/abstract_adapter.rb:612:in
block (2 levels) in log'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/abstract_adapter.rb:611:in
block in log'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.1/lib/active_support/notifications/instrumenter.rb:21:in
instrument'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/abstract_adapter.rb:603:in
log'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/postgresql/database_statements.rb:95:in
execute'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/abstract/schema_statements.rb:930:in
add_foreign_key'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:849:in
block in method_missing'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:818:in
block in say_with_time'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:818:in
say_with_time'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:838:in
method_missing'/home/mastodon/live/db/migrate/20170604144747_add_foreign_keys_for_accounts.rb:5:in
change'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:792:in
exec_migration'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:776:in
block (2 levels) in migrate'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:775:in
block in migrate'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:408:in
with_connection'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:774:in
migrate'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:953:in
migrate'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:1230:in
block in execute_migration_in_transaction'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:1298:in
block in ddl_transaction'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/abstract/database_statements.rb:225:in
block in transaction'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/abstract/transaction.rb:194:in
block in within_new_transaction'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/abstract/transaction.rb:191:in
within_new_transaction'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/abstract/database_statements.rb:225:in
transaction'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/transactions.rb:210:in
transaction'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:1298:in
ddl_transaction'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:1229:in
execute_migration_in_transaction'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:1201:in
block in migrate_without_lock'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:1200:in
each'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:1200:in
migrate_without_lock'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:1148:in
block in migrate'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:1317:in
with_advisory_lock'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:1148:in
migrate'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:1007:in
up'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:985:in
migrate'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/tasks/database_tasks.rb:171:in
migrate'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/railties/databases.rake:58:in
block (2 levels) in block in perform'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/railties-5.1.1/lib/rails/commands/rake/rake_command.rb:18:in
perform'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/railties-5.1.1/lib/rails/command.rb:46:in
invoke'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/railties-5.1.1/lib/rails/commands.rb:16:in
require'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/bootsnap-1.0.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:17:in
require'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.1/lib/active_support/dependencies.rb:292:in
block in require'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.1/lib/active_support/dependencies.rb:258:in
load_dependency'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.1/lib/active_support/dependencies.rb:292:in
require'
bin/rails:4:in
PG::ForeignKeyViolation: ERROR: insert or update on table "statuses" violates foreign key constraint "fk_rails_94a6f70399"
DETAIL: Key (in_reply_to_id)=(5949) is not present in table "statuses".
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/postgresql/database_statements.rb:97:in
async_exec'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/postgresql/database_statements.rb:97:in
block (2 levels) in execute'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.1/lib/active_support/dependencies/interlock.rb:46:in
block in permit_concurrent_loads'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.1/lib/active_support/concurrency/share_lock.rb:185:in
yield_shares'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.1/lib/active_support/dependencies/interlock.rb:45:in
permit_concurrent_loads'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/postgresql/database_statements.rb:96:in
block in execute'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/abstract_adapter.rb:612:in
block (2 levels) in log'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/abstract_adapter.rb:611:in
block in log'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.1/lib/active_support/notifications/instrumenter.rb:21:in
instrument'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/abstract_adapter.rb:603:in
log'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/postgresql/database_statements.rb:95:in
execute'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/abstract/schema_statements.rb:930:in
add_foreign_key'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:849:in
block in method_missing'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:818:in
block in say_with_time'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:818:in
say_with_time'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:838:in
method_missing'/home/mastodon/live/db/migrate/20170604144747_add_foreign_keys_for_accounts.rb:5:in
change'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:792:in
exec_migration'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:776:in
block (2 levels) in migrate'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:775:in
block in migrate'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:408:in
with_connection'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:774:in
migrate'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:953:in
migrate'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:1230:in
block in execute_migration_in_transaction'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:1298:in
block in ddl_transaction'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/abstract/database_statements.rb:225:in
block in transaction'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/abstract/transaction.rb:194:in
block in within_new_transaction'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/abstract/transaction.rb:191:in
within_new_transaction'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/connection_adapters/abstract/database_statements.rb:225:in
transaction'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/transactions.rb:210:in
transaction'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:1298:in
ddl_transaction'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:1229:in
execute_migration_in_transaction'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:1201:in
block in migrate_without_lock'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:1200:in
each'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:1200:in
migrate_without_lock'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:1148:in
block in migrate'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:1317:in
with_advisory_lock'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:1148:in
migrate'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:1007:in
up'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/migration.rb:985:in
migrate'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/tasks/database_tasks.rb:171:in
migrate'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activerecord-5.1.1/lib/active_record/railties/databases.rake:58:in
block (2 levels) in block in perform'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/railties-5.1.1/lib/rails/commands/rake/rake_command.rb:18:in
perform'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/railties-5.1.1/lib/rails/command.rb:46:in
invoke'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/railties-5.1.1/lib/rails/commands.rb:16:in
require'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/bootsnap-1.0.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:17:in
require'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.1/lib/active_support/dependencies.rb:292:in
block in require'
/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.1/lib/active_support/dependencies.rb:258:in
load_dependency'/home/mastodon/live/vendor/bundle/ruby/2.4.0/gems/activesupport-5.1.1/lib/active_support/dependencies.rb:292:in
require'
bin/rails:4:in
Tasks: TOP => db:migrate
(See full trace by running task with --trace)
Migrating to AddForeignKeysForAccounts (20170604144747)
== 20170604144747 AddForeignKeysForAccounts: migrating ========================
-- add_foreign_key(:statuses, :accounts, {:on_delete=>:cascade})
-> 0.1190s
-- add_foreign_key(:statuses, :accounts, {:column=>:in_reply_to_account_id, :on_delete=>:nullify})
-> 0.0562s
-- add_foreign_key(:statuses, :statuses, {:column=>:in_reply_to_id, :on_delete=>:nullify})
Most helpful comment
Stop Mastodon, run
rake mastodon:maintenance:prepare_for_foreign_keys
, and then re-run the migrations.