Skip to content

Sometimes merge request diffs that are stored externally fail to set the `external_diff_store` column

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

This causes the code review tab Changes in a merge request to not load.

Errno::ENOENT: No such file or directory @ rb_sysopen - /var/opt/gitlab/gitlab-rails/shared/external-diffs/merge_request_diffs/mr-55383568/diff-84831695
  gitlab_uploader.rb:89:in `initialize'
    File.open(path, "rb") if path
  gitlab_uploader.rb:89:in `open'
    File.open(path, "rb") if path
  gitlab_uploader.rb:89:in `open'
    File.open(path, "rb") if path
  merge_request_diff.rb:424:in `opening_external_diff'
    external_diff.open do |file|
  gitlab/metrics/instrumentation.rb:161:in `block in opening_external_diff'
    .measure { super }
...
(150 additional frame(s) were not displayed)

Errno::ENOENT: No such file or directory @ rb_sysopen - /var/opt/gitlab/gitlab-rails/shared/external-diffs/merge_request_diffs/mr-55383568/diff-84831695

Workaround:

  1. Navigate to the Merge request
  2. Click on Commits tab next to Changes
  3. Click on a specific commit and wait for the file to load
  4. Then click on the Changes tab
Edited by Nick Thomas