Project

Profile

Help

Issue #4006

closed

Multi-Artifact Content Units receive Duplicate Key Error with DeclarativeVersion

Added by bmbouter about 6 years ago. Updated almost 5 years ago.

Status:
CLOSED - CURRENTRELEASE
Priority:
High
Assignee:
Category:
-
Sprint/Milestone:
Start date:
Due date:
Estimated time:
Severity:
3. High
Version:
Platform Release:
OS:
Triaged:
No
Groomed:
No
Sprint Candidate:
No
Tags:
Sprint:
Quarter:

Description

Problem

The pulp_gem plugin code here [0] is written correctly, and the fixture data they use is also correct [1].

I've been able to reproduce the issue described to me on IRC.

Root Cause

There is a bug in the ArtifactDownloader stage whereby a unit with multiple Artifacts incorrectly reuses the first downloader's information (incorrectly) for subsequent Artifacts. This causes the Artifact to have the same sha256 value which raises the duplicate key exception.

Solution

Fix the bug by removing the extra, incorrect loop that is present.

[0]: https://github.com/ATIX-AG/pulp_gem/blob/update_api/pulp_gem/app/tasks/synchronizing.py#L69-L95
[1]: https://repos.fedorapeople.org/pulp/pulp/demo_repos/gems/repo/

Also available in: Atom PDF