Project

Profile

Help

Issue #3899

Failed PULP_MANIFEST downloads aren't reported to the user

Added by Ichimonji10 11 months ago. Updated 2 months ago.

Status:
CLOSED - CURRENTRELEASE
Priority:
Normal
Assignee:
Category:
-
Sprint/Milestone:
Severity:
2. Medium
Version:
Platform Release:
2.17.0
Blocks Release:
OS:
Backwards Incompatible:
No
Triaged:
Yes
Groomed:
No
Sprint Candidate:
No
Tags:
Pulp 2
QA Contact:
Complexity:
Smash Test:
Verified:
No
Verification Required:
No
Sprint:
Sprint 41

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 failure CLOSED - CURRENTRELEASE Actions

Associated revisions

Revision d867a746 View on GitHub
Added by daviddavis 11 months ago

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

History

#1 Updated by Ichimonji10 11 months ago

  • Description updated (diff)

#2 Updated by Ichimonji10 11 months ago

  • Description updated (diff)

#3 Updated by daviddavis 11 months ago

  • Status changed from NEW to POST
  • Assignee set to daviddavis
  • Sprint set to Sprint 40

#4 Updated by daviddavis 11 months ago

  • Platform Release set to 2.17.0

#5 Updated by CodeHeeler 11 months ago

  • Triaged changed from No to Yes

#6 Updated by rchan 11 months ago

  • Sprint changed from Sprint 40 to Sprint 41

#7 Updated by daviddavis 11 months ago

  • Related to Issue #3845: Pulp discards error message on ISO sync validation failure added

#8 Updated by daviddavis 11 months ago

  • Status changed from POST to MODIFIED

#9 Updated by rchan 11 months ago

  • Sprint/Milestone set to 2.17.0

Adding to 2.17.0 milestone so it shows up as intended for next build.

#10 Updated by ipanova@redhat.com 11 months ago

  • Platform Release changed from 2.17.0 to master

#11 Updated by ipanova@redhat.com 11 months ago

  • Platform Release deleted (master)

#12 Updated by ipanova@redhat.com 11 months ago

  • Platform Release set to 2.17.0

#13 Updated by ipanova@redhat.com 10 months ago

  • Status changed from MODIFIED to ON_QA

#14 Updated by ipanova@redhat.com 10 months ago

  • Status changed from ON_QA to CLOSED - CURRENTRELEASE

#15 Updated by bmbouter 2 months ago

  • Tags Pulp 2 added

Please register to edit this issue

Also available in: Atom PDF