Error when two different files are uploaded with the same name DesignManagement::Version::CouldNotCreateVersion
https://sentry.gitlab.net/gitlab/gitlabcom/issues/1731984/?referrer=gitlab_plugin
PG::UniqueViolation: ERROR: duplicate key value violates unique constraint "design_management_designs_versions_uniqueness"
DETAIL: Key (design_id, version_id)=(45999, 52332) already exists.
active_record/connection_adapters/postgresql/database_statements.rb:92:in `exec'
@connection.async_exec(sql)
design_management/save_designs_service.rb:34:in `upload_designs!'
::DesignManagement::Version.with_lock(project.id, repository) do
gitlab/metrics/instrumentation.rb:161:in `block in upload_designs!'
.measure { super }
gitlab/metrics/method_call.rb:27:in `measure'
retval = yield
gitlab/metrics/instrumentation.rb:161:in `upload_designs!'
.measure { super }
...
(245 additional frame(s) were not displayed)
ActiveRecord::RecordNotUnique: PG::UniqueViolation: ERROR: duplicate key value violates unique constraint "design_management_designs_versions_uniqueness"
DETAIL: Key (design_id, version_id)=(45999, 52332) already exists.
DesignManagement::Version::CouldNotCreateVersion: DesignManagement::Version::CouldNotCreateVersion
design_management/version.rb:99:in `rescue in create_for_designs'
raise CouldNotCreateVersion.new(sha, issue_id, design_actions)
design_management/save_designs_service.rb:34:in `upload_designs!'
::DesignManagement::Version.with_lock(project.id, repository) do
gitlab/metrics/instrumentation.rb:161:in `block in upload_designs!'
.measure { super }
gitlab/metrics/method_call.rb:27:in `measure'
retval = yield
gitlab/metrics/instrumentation.rb:161:in `upload_designs!'
.measure { super }
...
(245 additional frame(s) were not displayed)
DesignManagement::Version::CouldNotCreateVersion: could not create version from commit: 49f91368748eb7299b6664dba4992c5176a4717b
Issue was refined in #237798 (closed).
Permissions and Security
None.
Documentation
None.
Availability & Testing
Unit tests of SaveDesignsService
.
Recommended MR Breakdown
1 MR.
Edited by Luke Duncalfe