Skip to content

ActiveRecord::InvalidForeignKey: PG::ForeignKeyViolation: ERROR: insert or update on table "merge_request_metrics" violates forei...

https://sentry.gitlab.net/gitlab/gitlabcom/issues/2735911/?referrer=gitlab_plugin

PG::ForeignKeyViolation: ERROR:  insert or update on table "merge_request_metrics" violates foreign key constraint "fk_rails_e6d7c24d1b"
DETAIL:  Key (merge_request_id)=(109395321) is not present in table "merge_requests".

  activerecord (6.1.3.2) lib/active_record/connection_adapters/postgresql_adapter.rb:672:in `exec_params'
  activerecord (6.1.3.2) lib/active_record/transactions.rb:354:in `block in with_transaction_returning_status'
  activerecord (6.1.3.2) lib/active_record/connection_adapters/abstract/database_statements.rb:318:in `transaction'
  gitlab/database/load_balancing/connection_proxy.rb:116:in `block in write_using_load_balancer'
    connection.send(name, *args, &block)
  gitlab/database/load_balancing/load_balancer.rb:101:in `block in read_write'
    yield connection
...
(245 additional frame(s) were not displayed)

ActiveRecord::InvalidForeignKey: PG::ForeignKeyViolation: ERROR:  insert or update on table "merge_request_metrics" violates foreign key constraint "fk_rails_e6d7c24d1b"
DETAIL:  Key (merge_request_id)=(109395321) is not present in table "merge_requests".

Reproduction Steps

  1. Fork gitlab-org/gitlab to personal group.
  2. Edit any file in the fork.
  3. Create merge request targeting gitlab-org/gitlab:master.
  4. Create MR.
  5. Error is triggered.
Edited by Max Woolf