Bug 1548967

Summary: [RFE] provide means to force recheck/re-download of pulp docker repos
Product: Red Hat Satellite Reporter: Ahmed Nazmy <anazmy>
Component: PulpAssignee: satellite6-bugs <satellite6-bugs>
Status: CLOSED DUPLICATE QA Contact: Katello QA List <katello-qa-list>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 6.2.13CC: ttereshc
Target Milestone: UnspecifiedKeywords: FutureFeature
Target Release: Unused   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-05-02 18:29:24 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:

Description Ahmed Nazmy 2018-02-26 06:35:27 UTC
Description of problem:

If satellite fails to save a valid docker blob on disk due to any issue (disk full, network glitch), there are not means to force rechecking of a docker repo units similar to what we have for rpm repos.

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

pulp-client-1.0-1
satellite-6.2.13-4.0.el7sat
pulp-server-2.8.7.17-1.el7sat
pulp-docker-plugins-2.0.3.1-1.el7sat
python-crane-2.0.2.1-1.el7sat

How reproducible:
Always

Steps to Reproduce:
1. Setup a small /var/cache/pulp & /var/lib/pulp to hit limits soon
2. Sync some docker repos to fill-up space
3. Error similar to below should be noticed on disk fill-up (Notice its cache that got hit first) :
~~~
Jan 18 10:54:22 satellite.example.com pulp[53455]: nectar.downloaders.threaded:ERROR: (53455-15136) [Errno 28] No space left on device: u'/var/cache/pulp/reserved_resource_worker-6.com/d11a02d8-0a35-40ae-b8f1-301aea436200/sha256:2d36a0f107a4e56b82b2052f02896e58ccabca0d539bfef3f059ebe776c43443'
~~~

4. Verify docker repo sync is marked as complete from WebUI.

5. mentioned docker_blob is has a broken symlink to a missing file on disk:
~~~
# ls -al /var/lib/pulp/published/docker/v2/master/*openshift3_metrics-hawkular*/*/blobs/sha256:2d36a0f107a4e56b82b2052f02896e58ccabca0d539bfef3f059ebe776c43443

lrwxrwxrwx. 1 apache apache   177 Feb 21 11:42 sha256:2d36a0f107a4e56b82b2052f02896e58ccabca0d539bfef3f059ebe776c43443 -> /var/lib/pulp/content/units/docker_blob/06/2fa53cb04a019956f3d7e475a25bd0e8a0b86d21bb1582e50faa2c8f3676dc/sha256:2d36a0f107a4e56b82b2052f02896e58ccabca0d539bfef3f059ebe776c43443
~~~
5. Increase  /var/cache/pulp & /var/lib/pulp disk space to accommodate more docker_blobs

6. Trying to delete/recreate/re-sync this repo doesn't fix the problem.

 
Actual results:

Satellite/pulp wrongfully report docker repo sync is complete, while actually its not, deleting, readding and resyncing the repo from WebUI doesnt actually recover the missing blobs.


Expected results:

Add CLI (hammer/pulp-admin) and WebUI functionality to force content validation for docker repos on syncing.

Comment 3 Tanya Tereshchenko 2018-05-02 18:29:24 UTC

*** This bug has been marked as a duplicate of bug 1548966 ***