Issue #3899
closedFailed PULP_MANIFEST downloads aren't reported to the user
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
Updated by daviddavis over 6 years ago
- Status changed from NEW to POST
- Assignee set to daviddavis
- Sprint set to Sprint 40
Updated by daviddavis over 6 years ago
- Related to Issue #3845: Pulp discards error message on ISO sync validation failure added
Added by daviddavis over 6 years ago
Updated by daviddavis over 6 years ago
- Status changed from POST to MODIFIED
Applied in changeset d867a7466cd4c6dc3a6a0e10d6a56c3cacbce6ec.
Updated by rchan over 6 years ago
- Sprint/Milestone set to 2.17.0
Adding to 2.17.0 milestone so it shows up as intended for next build.
Updated by ipanova@redhat.com over 6 years ago
- Platform Release changed from 2.17.0 to master
Updated by ipanova@redhat.com over 6 years ago
- Platform Release deleted (
master)
Updated by ipanova@redhat.com over 6 years ago
- Status changed from MODIFIED to 5
Updated by ipanova@redhat.com about 6 years ago
- Status changed from 5 to CLOSED - CURRENTRELEASE
Fixing arity problem in iso's DownloadEventListener
The DownloadEventListener interface defines download_failed(self, report) and this restores the arity.
fixes #3899 https://pulp.plan.io/issues/3899