Bug 1101622

Summary: errata upload continues to upload even after detecting error in packagelist-csv
Product: [Retired] Pulp Reporter: Preethi Thomas <pthomas>
Component: rpm-supportAssignee: Jeremy Cline <jcline>
Status: CLOSED CURRENTRELEASE QA Contact: Preethi Thomas <pthomas>
Severity: unspecified Docs Contact:
Priority: low    
Version: 2.4 BetaCC: jcline, skarmark
Target Milestone: ---Keywords: Triaged
Target Release: 2.4.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-08-09 06:55:52 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 Preethi Thomas 2014-05-27 15:48:51 UTC
Description of problem:
When the packagelist-csv is malformed the errata creation continues


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


How reproducible:


Steps to Reproduce:
1.create a malformed packagelist-csv 
2. rum rpm uploads erratum with the malformed csv
3.

Actual results:
root@ibm-x3250m4-04 ~]#  pulp-admin rpm repo uploads erratum --repo-id errata --erratum-id RHSA-2014:0003 --title Walrus3 --description Walrus --version 5.21 --release 1 --type security --status "final"  --updated "2014-05-14 10:17:38" --issued "2013-05-14 10:17:52" -p walrus-malformed.csv --from "pthomas" -v
+----------------------------------------------------------------------+
                              Unit Upload
+----------------------------------------------------------------------+

Extracting necessary metadata for each request...
Bad format [['walrus', '5.21', '1', '0', 'noarch', 'walrus-5.21-1.noarch.rpm',
'sha256', 'http://walrus.com/walrus-5.21-1.noarch.rpm']] in csv
[walrus-malformed.csv], 8 arguments, expected 9

... completed

Creating upload requests on the server...
[==================================================] 100%
Initializing upload
... completed

Starting upload of selected units. If this process is stopped through ctrl+c,
the uploads will be paused and may be resumed later using the resume command or
cancelled entirely using the cancel command.

Importing into the repository...
This command may be exited via ctrl+c without affecting the request.


[\]
Running...

Task Succeeded


Deleting the upload request...
... completed

Expected results:
Uploads stops when malformed csv is detected

Additional info:

Comment 1 Preethi Thomas 2014-05-27 16:51:30 UTC
Uploads is not successful

6f5bd]
May 27 11:32:48 ibm-x3250m4-04 pulp: pulp.plugins.conduits.mixins:ERROR: Content unit association failed [Unit [key={'id': 'RHSA-2014:0003'}] [type=erratum] [id=None]]
May 27 11:32:48 ibm-x3250m4-04 pulp: pulp.plugins.conduits.mixins:ERROR: Traceback (most recent call last):
May 27 11:32:48 ibm-x3250m4-04 pulp: pulp.plugins.conduits.mixins:ERROR:   File "/usr/lib/python2.6/site-packages/pulp/plugins/conduits/mixins.py", line 480, in save_unit
May 27 11:32:48 ibm-x3250m4-04 pulp: pulp.plugins.conduits.mixins:ERROR:     pulp_unit = common_utils.to_pulp_unit(unit)
May 27 11:32:48 ibm-x3250m4-04 pulp: pulp.plugins.conduits.mixins:ERROR:   File "/usr/lib/python2.6/site-packages/pulp/plugins/conduits/_common.py", line 28, in to_pulp_unit
May 27 11:32:48 ibm-x3250m4-04 pulp: pulp.plugins.conduits.mixins:ERROR:     pulp_unit = dict(plugin_unit.metadata)
May 27 11:32:48 ibm-x3250m4-04 pulp: pulp.plugins.conduits.mixins:ERROR: TypeError: 'int' object is not iterable
May 27 11:32:48 ibm-x3250m4-04 pulp: pulp_rpm.plugins.importers.yum.upload:ERROR: unexpected error occurred importing uploaded file
May 27 11:32:48 ibm-x3250m4-04 pulp: pulp_rpm.plugins.importers.yum.upload:ERROR: Traceback (most recent call last):
May 27 11:32:48 ibm-x3250m4-04 pulp: pulp_rpm.plugins.importers.yum.upload:ERROR:   File "/usr/lib/python2.6/site-packages/pulp_rpm/plugins/importers/yum/upload.py", line 85, in upload
May 27 11:32:48 ibm-x3250m4-04 pulp: pulp_rpm.plugins.importers.yum.upload:ERROR:     handlers[type_id](type_id, unit_key, metadata, file_path, conduit, config)
May 27 11:32:48 ibm-x3250m4-04 pulp: pulp_rpm.plugins.importers.yum.upload:ERROR:   File "/usr/lib/python2.6/site-packages/pulp_rpm/plugins/importers/yum/upload.py", line 132, in _handle_erratum
May 27 11:32:48 ibm-x3250m4-04 pulp: pulp_rpm.plugins.importers.yum.upload:ERROR:     saved_unit = conduit.save_unit(unit)
May 27 11:32:48 ibm-x3250m4-04 pulp: pulp_rpm.plugins.importers.yum.upload:ERROR:   File "/usr/lib/python2.6/site-packages/pulp/plugins/conduits/mixins.py", line 480, in save_unit
May 27 11:32:48 ibm-x3250m4-04 pulp: pulp_rpm.plugins.importers.yum.upload:ERROR:     pulp_unit = common_utils.to_pulp_unit(unit)
May 27 11:32:48 ibm-x3250m4-04 pulp: pulp_rpm.plugins.importers.yum.upload:ERROR:   File "/usr/lib/python2.6/site-packages/pulp/plugins/conduits/_common.py", line 28, in to_pulp_unit
May 27 11:32:48 ibm-x3250m4-04 pulp: pulp_rpm.plugins.importers.yum.upload:ERROR:     pulp_unit = dict(plugin_unit.metadata)
May 27 11:32:48 ibm-x3250m4-04 pulp: pulp_rpm.plugins.importers.yum.upload:ERROR: ImporterConduitException: 'int' object is not iterable
May 27 11:32:48 ibm-x3250m4-04 pulp: celery.worker.job:INFO: Task pulp.server.managers.content.upload.import_uploaded_unit[d7059f30-4c40-4670-89e7-543560aae031] succeeded in 0.0405288310139s: {'details': {'errors': ['unexpected error occurred importing uploaded file']}, 'success_flag': False, 'summary': ''}

Comment 2 Preethi Thomas 2014-06-02 19:28:41 UTC
The traceback appears when the csv file is missing as well.

celery.worker.job:INFO: Task pulp.server.async.tasks._reserve_resource[a73101d1-4698-4d4c-93cf-c3301827b9f5] succeeded in 0.0393775520497s: reserved_resource_worker-13.eng.bos.redhat.com.dq
celery.worker.strategy:INFO: Received task: pulp.server.managers.content.upload.import_uploaded_unit[29c87621-839f-4ead-b787-b30011f52f9c]
celery.worker.strategy:INFO: Received task: pulp.server.async.tasks._queue_release_resource[ca381fae-db2f-4697-bb6c-37189cc10ecd]
pulp.plugins.conduits.mixins:ERROR: Content unit association failed [Unit [key={'id': 'DEMO_ID_1'}] [type=erratum] [id=None]]
pulp.plugins.conduits.mixins:ERROR: Traceback (most recent call last):
pulp.plugins.conduits.mixins:ERROR:   File "/usr/lib/python2.7/site-packages/pulp/plugins/conduits/mixins.py", line 480, in save_unit
pulp.plugins.conduits.mixins:ERROR:     pulp_unit = common_utils.to_pulp_unit(unit)
pulp.plugins.conduits.mixins:ERROR:   File "/usr/lib/python2.7/site-packages/pulp/plugins/conduits/_common.py", line 28, in to_pulp_unit
pulp.plugins.conduits.mixins:ERROR:     pulp_unit = dict(plugin_unit.metadata)
pulp.plugins.conduits.mixins:ERROR: TypeError: 'int' object is not iterable
pulp_rpm.plugins.importers.yum.upload:ERROR: unexpected error occurred importing uploaded file
pulp_rpm.plugins.importers.yum.upload:ERROR: Traceback (most recent call last):
pulp_rpm.plugins.importers.yum.upload:ERROR:   File "/usr/lib/python2.7/site-packages/pulp_rpm/plugins/importers/yum/upload.py", line 85, in upload
pulp_rpm.plugins.importers.yum.upload:ERROR:     handlers[type_id](type_id, unit_key, metadata, file_path, conduit, config)
pulp_rpm.plugins.importers.yum.upload:ERROR:   File "/usr/lib/python2.7/site-packages/pulp_rpm/plugins/importers/yum/upload.py", line 132, in _handle_erratum
pulp_rpm.plugins.importers.yum.upload:ERROR:     saved_unit = conduit.save_unit(unit)
pulp_rpm.plugins.importers.yum.upload:ERROR:   File "/usr/lib/python2.7/site-packages/pulp/plugins/conduits/mixins.py", line 480, in save_unit
pulp_rpm.plugins.importers.yum.upload:ERROR:     pulp_unit = common_utils.to_pulp_unit(unit)
pulp_rpm.plugins.importers.yum.upload:ERROR:   File "/usr/lib/python2.7/site-packages/pulp/plugins/conduits/_common.py", line 28, in to_pulp_unit
pulp_rpm.plugins.importers.yum.upload:ERROR:     pulp_unit = dict(plugin_unit.metadata)
pulp_rpm.plugins.importers.yum.upload:ERROR: ImporterConduitException: 'int' object is not iterable
celery.worker.job:INFO: Task pulp.server.managers.content.upload.import_uploaded_unit[29c87621-839f-4ead-b787-b30011f52f9c] succeeded in 0.0104483980103s: {'details': {'errors': ['unexpected error occurred importing uploaded file']}, 'success_flag': False, 'summary': ''}
celery.worker.strategy:INFO: Received task: pulp.server.async.tasks._release_resource[bd0e9347-f594-4efe-becd-bd77621829f6]

Comment 3 Jeremy Cline 2014-06-16 12:21:54 UTC
https://github.com/pulp/pulp_rpm/pull/510

Comment 4 Jeremy Cline 2014-06-16 12:23:51 UTC
*** Bug 972928 has been marked as a duplicate of this bug. ***

Comment 5 Randy Barlow 2014-06-17 19:02:38 UTC
Fixed in 2.4.0-0.21.beta.

Comment 6 Preethi Thomas 2014-06-30 18:20:10 UTC
[root@mgmt3 ~]# rpm -qa pulp-server
pulp-server-2.4.0-0.23.beta.el6.noarch
[root@mgmt3 ~]# 

[root@mgmt3 ~]# pulp-admin rpm repo uploads erratum --repo-id errata --erratum-id RHSA-2014:0003 --title Walrus3 --description Walrus --version 5.21 --release 1 --type security --status "final"  --updated "2014-05-14 10:17:38" --issued "2013-05-14 10:17:52" -p walrus-malformed.csv --from "pthomas" 
+----------------------------------------------------------------------+
                              Unit Upload
+----------------------------------------------------------------------+

Extracting necessary metadata for each request...

Metadata for the unit to create could not be generated. The specific error is as
follows:

Bad format [[':q!']] in csv [walrus-malformed.csv], 1 arguments, expected 9

[root@mgmt3 ~]# 



[root@mgmt3 ~]# pulp-admin rpm repo uploads erratum --repo-id errata --erratum-id RHSA-2014:0003 --title Walrus3 --description Walrus --version 5.21 --release 1 --type security --status "final"  --updated "2014-05-14 10:17:38" --issued "2013-05-14 10:17:52" -p walrus-malformed1.csv --from "pthomas" 
+----------------------------------------------------------------------+
                              Unit Upload
+----------------------------------------------------------------------+

Extracting necessary metadata for each request...

Metadata for the unit to create could not be generated. The specific error is as
follows:

Package list CSV file [walrus-malformed1.csv] not found

[root@mgmt3 ~]#

Comment 7 Randy Barlow 2014-08-09 06:55:52 UTC
This has been fixed in Pulp 2.4.0-1.