ResolveConflicts returning 13:retrieving object: object not found
I'm not sure if this is a Gitaly error or a Rails caller issue, but @marina.mosti reported a 500 error resolving conflicts in https://gitlab.com/gitlab-com/gl-infra/gitlab-dedicated/switchboard/-/merge_requests/1252:
In https://log.gprd.gitlab.net/app/r/s/02Jwm, I see these 500 errors with Gitaly on gitaly-08-stor-gprd
reporting 13:retrieving object: object not found
:
"exception.backtrace": [
"lib/gitlab/git/wraps_gitaly_errors.rb:24:in `rescue in wrapped_gitaly_errors'",
"lib/gitlab/git/wraps_gitaly_errors.rb:6:in `wrapped_gitaly_errors'",
"lib/gitlab/git/conflict/resolver.rb:30:in `resolve_conflicts'",
"lib/gitlab/conflict/file_collection.rb:25:in `resolve'",
"app/services/merge_requests/conflicts/resolve_service.rb:9:in `execute'",
"app/controllers/projects/merge_requests/conflicts_controller.rb:66:in `resolve_conflicts'",
"ee/lib/gitlab/ip_address_state.rb:10:in `with'",
"ee/app/controllers/ee/application_controller.rb:45:in `set_current_ip_address'",
"app/controllers/application_controller.rb:468:in `set_current_admin'",
"lib/gitlab/session.rb:11:in `with_session'",
"app/controllers/application_controller.rb:459:in `set_session_storage'",
"lib/gitlab/i18n.rb:114:in `with_locale'",
"lib/gitlab/i18n.rb:120:in `with_user_locale'",
...
The parameters from the log message:
[commit_message, files, namespace_id, project_id, id, conflict]
[
Merge branch 'main' into 'marina.mosti-4347-leverage-invalidation'
# Conflicts:
# app/javascript/pages/tenants/show/customer_page.vue
# app/javascript/pages/tenants/show/operator_page.vue
# app/javascript/queries/use_tenant_config_changes_query.js,
[{"old_path"=>"app/javascript/pages/tenants/show/customer_page.vue", "new_path"=>"app/javascript/pages/tenants/show/customer_page.vue", "content"=>"[FILTERED]"}, {"old_path"=>"app/javascript/pages/tenants/show/operator_page.vue", "new_path"=>"app/javascript/pages/tenants/show/operator_page.vue", "content"=>"[FILTERED]"}, {"old_path"=>"app/javascript/queries/use_tenant_config_changes_query.js", "new_path"=>"app/javascript/queries/use_tenant_config_changes_query.js", "content"=>"[FILTERED]"}],
gitlab-com/gl-infra/gitlab-dedicated,
switchboard,
1252,
{"commit_message"=>"Merge branch 'main' into 'marina.mosti-4347-leverage-invalidation'\n\n# Conflicts:\n# app/javascript/pages/tenants/show/customer_page.vue\n# app/javascript/pages/tenants/show/operator_page.vue\n# app/javascript/queries/use_tenant_config_changes_query.js", "files"=>[{"old_path"=>"app/javascript/pages/tenants/show/customer_page.vue", "new_path"=>"app/javascript/pages/tenants/show/customer_page.vue", "content"=>"[FILTERED]"}, {"old_path"=>"app/javascript/pages/tenants/show/operator_page.vue", "new_path"=>"app/javascript/pages/tenants/show/operator_page.vue", "content"=>"[FILTERED]"}, {"old_path"=>"app/javascript/queries/use_tenant_config_changes_query.js", "new_path"=>"app/javascript/queries/use_tenant_config_changes_query.js", "content"=>"[FILTERED]"}]}
]
It looks like https://gitlab.com/gitlab-org/gitaly/-/blob/de8220dfa186ef1d864050db8473f5bc629113ef/internal/gitaly/service/conflicts/resolve_conflicts.go#L254-258 is where this error originated. It sounds like it wasn't able to retrieve conflictedBlob.OID.Revision()
for some reason.
@knayakgl Do you have any idea what might be going on here?