Bug 1953984

Summary: pulp3: Capsule docker sync fails with the missing blob error
Product: Red Hat Satellite Reporter: Ina Panova <ipanova>
Component: PulpAssignee: satellite6-bugs <satellite6-bugs>
Status: CLOSED ERRATA QA Contact: Vladimír Sedmík <vsedmik>
Severity: high Docs Contact:
Priority: unspecified    
Version: 6.9.0CC: ggainey, juwatts, rchan, ttereshc, vsedmik, zhunting
Target Milestone: 6.9.2Keywords: Triaged
Target Release: Unused   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: pulp_container-2.1.2 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-05-20 18:05:29 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1953982    
Bug Blocks:    

Description Ina Panova 2021-04-27 11:03:31 UTC
Description of problem:

Pulp3 to pulp2 sync fails because of missing empty blob. In the converted manifest schema1 an empty blob with digest sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 is present and pulp2 tries to fetch it unsuccessfully because pulp3 does not have it on the fs

Error: DKR1020: Image download(s) from https://kangae.example.com/v2/test_organizationupgrade1-test_product-foremanbusybox/blobs/sha256:a3ed95caeb02ffe68cdd9
fd84406680ae93d633cb16422d00e8a7c22955b46d4 failed. Sync task has failed to prevent a corrupted repository.
DKR1020: Image download(s) from https://kangae.example.com/v2/test_organizationupgrade1-library-composite-test_product-foremanbusybox/blobs/sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 failed. Sync task has failed to prevent a corrupted repository.
DKR1020: Image download(s) from https://kangae.example.com/v2/test_organizationupgrade1-library-component_1-test_product-foremanbusybox/blobs/sha256:a3ed95ca
eb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 failed. Sync task has failed to prevent a corrupted repository.


When I try to curl one of these, I get:

{"errors":[{"code":"BLOB_UNKNOWN","message":"Blob not found.","detail":{"digest":"sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4"}}]}

and on the pulp2 box: Apr 27 00:22:33  pulp: nectar.downloaders.threaded:INFO: Download failed: Download of https://kangae.example.com/v2/test_org
anizationupgrade1-library-composite-test_product-foremanbusybox/blobs/sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4 failed with code 404: Not Found


Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
Use this repo to sync  "upstream_name": "foreman/busybox-test",                                                                                                                                                                                  
"url": "https://quay.io/",  

Actual results:


Expected results:


Additional info:

Comment 1 pulp-infra@redhat.com 2021-04-29 10:09:59 UTC
The Pulp upstream bug status is at NEW. Updating the external tracker on this bug.

Comment 2 pulp-infra@redhat.com 2021-04-29 10:10:01 UTC
The Pulp upstream bug priority is at Normal. Updating the external tracker on this bug.

Comment 3 pulp-infra@redhat.com 2021-04-30 15:09:17 UTC
The Pulp upstream bug status is at ASSIGNED. Updating the external tracker on this bug.

Comment 4 pulp-infra@redhat.com 2021-05-03 17:36:32 UTC
The Pulp upstream bug status is at POST. Updating the external tracker on this bug.

Comment 5 pulp-infra@redhat.com 2021-05-03 18:16:58 UTC
The Pulp upstream bug status is at MODIFIED. Updating the external tracker on this bug.

Comment 6 pulp-infra@redhat.com 2021-05-03 19:12:12 UTC
All upstream Pulp bugs are at MODIFIED+. Moving this bug to POST.

Comment 7 pulp-infra@redhat.com 2021-05-04 15:07:06 UTC
The Pulp upstream bug status is at CLOSED - CURRENTRELEASE. Updating the external tracker on this bug.

Comment 8 Ina Panova 2021-05-07 15:38:19 UTC
Steps to verify:
1. create and sync in pulp3 "foreman/busybox-test" from quay.io
2. Confirm that in the repo there is only one manifest of schema2(introspect pulp3 repo)
3. Confirm that pulp3 does not contain blob with the following digest:
                                                                                                                                                                      
pulpcore-manager shell -c "from pulp_container.app.models import Blob; print(Blob.objects.filter(digest='sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4'))"

This should give an empty result.

4. trigger capsule sync, it should succeed.

Comment 14 errata-xmlrpc 2021-05-20 18:05:29 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (Satellite 6.9.2 Async Bug Fix Update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2021:2074