Project

Profile

Help

Issue #3899

closed

Failed PULP_MANIFEST downloads aren't reported to the user

Added by Ichimonji10 over 5 years ago. Updated over 2 years ago.

Status:
CLOSED - CURRENTRELEASE
Priority:
Normal
Assignee:
Sprint/Milestone:
-
Start date:
Due date:
Estimated time:
Severity:
2. Medium
Version:
Platform Release:
2.17.0
OS:
Triaged:
Yes
Groomed:
No
Sprint Candidate:
No
Tags:
Pulp 2
Sprint:
Sprint 41
Quarter:

Description

https://repos.fedorapeople.org/pulp/pulp/fixtures/file-mixed/ contains the following:

  • 1.iso
  • 2.iso
  • 3.iso
  • PULP_MANIFEST

The manifest contains the following:

1.iso,d7f9af3ef82087102149dab1de79f90cbc164fd052d6b0dd32fea4f756af99f0,1024
2.iso,687bfda765f741bfafe171713a4876bfbb4b38c4d85d8d3e138b94af6d0f4bcc,1024
3.iso,fa9686383b6fdd9ba86f60421e905cdfb619085b08188a2e5ca7d74b2afc531a,1024
missing-1.iso,4a36e4eede4a61fd547040b53b1656b6dd489bd5bc4c0dd5fe55892dcf1669e8,1048576
missing-2.iso,ab6d91d4956d1a009bd6d03b3591f95aaae83b36907f77dd1ac71c400715b901,2097152

As you can see, the manifest references files that don't exist. Let's say that one creates a repository, sets its importer URL to https://repos.fedorapeople.org/pulp/pulp/fixtures/file-mixed/, and syncs the repository. In this case, Pulp should report an error with the sync. Unfortunately, Pulp does no such thing. It acts as if the sync succeeded. Peeking into journalctl shows why:

Aug 02 13:22:20 rhel-7-pulp-2-17-nightly pulp[1880]: nectar.downloaders.threaded:INFO: Download failed: Download of https://repos.fedorapeople.org/pulp/pulp/fixtures/file-mixed/missing-1.iso failed with code 404: Not Found              
Aug 02 13:22:20 rhel-7-pulp-2-17-nightly pulp[1880]: nectar.downloaders.base:ERROR: (1880-30304) download_failed() takes exactly 3 arguments (2 given)                                                                                      
Aug 02 13:22:20 rhel-7-pulp-2-17-nightly pulp[1880]: nectar.downloaders.base:ERROR: (1880-30304) Traceback (most recent call last):                                                                                                         
Aug 02 13:22:20 rhel-7-pulp-2-17-nightly pulp[1880]: nectar.downloaders.base:ERROR: (1880-30304)   File "/usr/lib/python2.7/site-packages/nectar/downloaders/base.py", line 145, in _fire_event_to_listener                                 
Aug 02 13:22:20 rhel-7-pulp-2-17-nightly pulp[1880]: nectar.downloaders.base:ERROR: (1880-30304)     event_listener_callback(*args, **kwargs)                                                                                               
Aug 02 13:22:20 rhel-7-pulp-2-17-nightly pulp[1880]: nectar.downloaders.base:ERROR: (1880-30304) TypeError: download_failed() takes exactly 3 arguments (2 given)                                                                           
Aug 02 13:22:20 rhel-7-pulp-2-17-nightly pulp[1880]: nectar.downloaders.threaded:INFO: Download succeeded: https://repos.fedorapeople.org/pulp/pulp/fixtures/file-mixed/3.iso.                                                              
Aug 02 13:22:20 rhel-7-pulp-2-17-nightly pulp[1880]: nectar.downloaders.threaded:INFO: Download succeeded: https://repos.fedorapeople.org/pulp/pulp/fixtures/file-mixed/2.iso.                                                              
Aug 02 13:22:20 rhel-7-pulp-2-17-nightly pulp[1880]: nectar.downloaders.threaded:INFO: Download failed: Download of https://repos.fedorapeople.org/pulp/pulp/fixtures/file-mixed/missing-2.iso failed with code 404: Not Found              
Aug 02 13:22:20 rhel-7-pulp-2-17-nightly pulp[1880]: nectar.downloaders.base:ERROR: (1880-06496) download_failed() takes exactly 3 arguments (2 given)                                                                                      
Aug 02 13:22:20 rhel-7-pulp-2-17-nightly pulp[1880]: nectar.downloaders.base:ERROR: (1880-06496) Traceback (most recent call last):                                                                                                         
Aug 02 13:22:20 rhel-7-pulp-2-17-nightly pulp[1880]: nectar.downloaders.base:ERROR: (1880-06496)   File "/usr/lib/python2.7/site-packages/nectar/downloaders/base.py", line 145, in _fire_event_to_listener                                 
Aug 02 13:22:20 rhel-7-pulp-2-17-nightly pulp[1880]: nectar.downloaders.base:ERROR: (1880-06496)     event_listener_callback(*args, **kwargs)                                                                                               
Aug 02 13:22:20 rhel-7-pulp-2-17-nightly pulp[1880]: nectar.downloaders.base:ERROR: (1880-06496) TypeError: download_failed() takes exactly 3 arguments (2 given)                                                                           
Aug 02 13:22:20 rhel-7-pulp-2-17-nightly pulp[1880]: nectar.downloaders.threaded:INFO: Download succeeded: https://repos.fedorapeople.org/pulp/pulp/fixtures/file-mixed/1.iso.

This issue occurs on the latest nightly builds of Pulp 2 (to-be 2.17) on both F27 and RHEL 7. Here's some of the RPMs installed on a sample test VM:

[root@rhel-7-pulp-2-17-nightly ~]# rpm -qa | grep -i 'solv\|pulp' | sort
libsolv-0.6.34-4.el7.x86_64
pulp-admin-client-2.17.0-0.1.alpha.201808010512git0697ade.el7.noarch
pulp-deb-admin-extensions-1.8.0-0.1.alpha.201808010517git4df9825.el7.noarch
pulp-deb-plugins-1.8.0-0.1.alpha.201808010517git4df9825.el7.noarch
pulp-docker-admin-extensions-3.2.0-0.1.alpha.201808010504git4356228.el7.noarch
pulp-docker-plugins-3.2.0-0.1.alpha.201808010504git4356228.el7.noarch
pulp-ostree-admin-extensions-1.4.0-0.1.alpha.201808010506git2c2d534.el7.noarch
pulp-ostree-plugins-1.4.0-0.1.alpha.201808010506git2c2d534.el7.noarch
pulp-puppet-admin-extensions-2.17.0-0.1.alpha.201808010507git44a02f8.el7.noarch
pulp-puppet-plugins-2.17.0-0.1.alpha.201808010507git44a02f8.el7.noarch
pulp-puppet-tools-2.17.0-0.1.alpha.201808010507git44a02f8.el7.noarch
pulp-python-admin-extensions-2.1.0-0.1.alpha.201808010503git5e2aa35.el7.noarch
pulp-python-plugins-2.1.0-0.1.alpha.201808010503git5e2aa35.el7.noarch
pulp-rpm-admin-extensions-2.17.0-0.1.alpha.201808010509git421caf4.el7.noarch
pulp-rpm-plugins-2.17.0-0.1.alpha.201808010509git421caf4.el7.noarch
pulp-selinux-2.17.0-0.1.alpha.201808010512git0697ade.el7.noarch
pulp-server-2.17.0-0.1.alpha.201808010512git0697ade.el7.noarch
python2-solv-0.6.34-4.el7.x86_64
python-isodate-0.5.0-4.pulp.el7.noarch
python-pulp-bindings-2.17.0-0.1.alpha.201808010512git0697ade.el7.noarch
python-pulp-client-lib-2.17.0-0.1.alpha.201808010512git0697ade.el7.noarch
python-pulp-common-2.17.0-0.1.alpha.201808010512git0697ade.el7.noarch
python-pulp-deb-common-1.8.0-0.1.alpha.201808010517git4df9825.el7.noarch
python-pulp-docker-common-3.2.0-0.1.alpha.201808010504git4356228.el7.noarch
python-pulp-oid_validation-2.17.0-0.1.alpha.201808010512git0697ade.el7.noarch
python-pulp-ostree-common-1.4.0-0.1.alpha.201808010506git2c2d534.el7.noarch
python-pulp-puppet-common-2.17.0-0.1.alpha.201808010507git44a02f8.el7.noarch
python-pulp-python-common-2.1.0-0.1.alpha.201808010503git5e2aa35.el7.noarch
python-pulp-repoauth-2.17.0-0.1.alpha.201808010512git0697ade.el7.noarch
python-pulp-rpm-common-2.17.0-0.1.alpha.201808010509git421caf4.el7.noarch
python-pulp-streamer-2.17.0-0.1.alpha.201808010512git0697ade.el7.noarch

The easiest way to reproduce this issue is by executing an existing test case with python -m unittest --verbose pulp_2_tests.tests.rpm.api_v2.test_iso_crud.PulpManifestTestCase. This is a regression.


Related issues

Related to RPM Support - Issue #3845: Pulp discards error message on ISO sync validation failureCLOSED - CURRENTRELEASEbizhangActions

Also available in: Atom PDF