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/

Added by bmbouter about 6 years ago

Revision c683ec82 | View on GitHub

Multi-Artifact Content units work now

The artifact downloader was not instantiating the Artifacts correctly which caused duplicate key errors.

https://pulp.plan.io/issues/4006 closes #4006

Added by bmbouter about 6 years ago

Revision c683ec82 | View on GitHub

Multi-Artifact Content units work now

The artifact downloader was not instantiating the Artifacts correctly which caused duplicate key errors.

https://pulp.plan.io/issues/4006 closes #4006

Actions #2

Updated by bmbouter about 6 years ago

  • Status changed from ASSIGNED to MODIFIED
Actions #3

Updated by daviddavis over 5 years ago

  • Sprint/Milestone set to 3.0.0
Actions #4

Updated by bmbouter over 5 years ago

  • Tags deleted (Pulp 3)
Actions #5

Updated by bmbouter almost 5 years ago

  • Status changed from MODIFIED to CLOSED - CURRENTRELEASE

Also available in: Atom PDF