Bug 958932 - Errata install - package name sent to client is incorrect; therefore, not installed
Summary: Errata install - package name sent to client is incorrect; therefore, not ins...
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Pulp
Classification: Retired
Component: consumers
Version: 2.1 Beta
Hardware: Unspecified
OS: Unspecified
unspecified
medium
Target Milestone: ---
: ---
Assignee: Jeff Ortel
QA Contact: Preethi Thomas
URL:
Whiteboard:
Depends On:
Blocks: 950743
TreeView+ depends on / blocked
 
Reported: 2013-05-02 17:40 UTC by Brad Buckingham
Modified: 2013-06-19 18:59 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-05-08 21:20:00 UTC
Embargoed:


Attachments (Terms of Use)

Description Brad Buckingham 2013-05-02 17:40:06 UTC
Description of problem:

Attempting to install an errata from the 'zoo' test repo results in an error from the consumer.

Version-Release number of selected component (if applicable):
pulp-server-2.1.1-0.9.beta.el6.noarch

How reproducible:
always

Steps to Reproduce:
1. synced zoo repo ( http://inecas.fedorapeople.org/fakerepos/zoo3/ )

2. register client, e.g.
subscription-manager register --org ACME_Corporation --environment dev/zoo_view_1

3. subscribe client, e.g.
subscription-manager subscribe --pool 8a8d01353e56ebfd013e56ef6d900004

4. update the redhat.repo, e.g.
yum repolist

5. install an older version of 'walrus' on the client
yum install walrus-0.71

6. attempt to install 'RHEA-2012:0002' which should update walrus to walrus-5.21

Actual results:

Package not updated on the client.  The following error observed in the log:
  (Notice that the package name is listed as: walrus-None:5.21-1.noarch vs walrus-5.21-1.noarch)

2013-05-02 12:30:56,036 [INFO][worker-0] dispatch() @ dispatcher.py:646 - request: {'classname': 'Content', 'kws': {}, 'args': [[{'unit_key': {'name': 'walrus-None:5.21-1.noarch'}, 'type_id': 'rpm'}], {}], 'method': 'install', 'cntr': None}
2013-05-02 12:30:56,499 [INFO][worker-0] update_progress() @ conduit.py:40 - Progress reported:{'steps': [['Refresh Repository Metadata', None]], 'details': {}}
2013-05-02 12:30:56,730 [ERROR][worker-0] install() @ dispatcher.py:80 - handler failed
Traceback (most recent call last):
  File "/usr/lib/python2.6/site-packages/pulp/agent/lib/dispatcher.py", line 76, in install
    report = handler.install(conduit, units, dict(options))
  File "/usr/lib/pulp/agent/handlers/rpm.py", line 99, in install
    details = pkg.install(names)
  File "/usr/lib/python2.6/site-packages/pulp_rpm/handler/rpmtools.py", line 124, in install
    yb.install(pattern=info)
  File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 3461, in install
    raise Errors.InstallError, _('No package(s) available to install')
InstallError: No package(s) available to install
2013-05-02 12:30:56,741 [INFO][worker-0] sendreply() @ rmi.py:156 - 0872270c-107c-47a7-ac59-3be9249807f0 processed in: 758 (ms)


Expected results:
Package on client updated to: walrus-5.21-1

Additional info:

Comment 2 Jay Dobies 2013-05-02 18:16:32 UTC
I synchronized this repository to look around. When looking at the errata inventoried in Pulp, I see:

[snip]
Description:      Bird_Erratum
From Str:         errata
Id:               RHEA-2012:0003
Issued:           2012-02-29 11:01:11
Pkglist:          
  Name:     1
  Packages: 
    Arch:     noarch
    Epoch:    None
    Filename: crow-0.8-1.noarch.rpm
    Name:     crow
    Release:  1
    Src:      http://www.fedoraproject.org
    Version:  0.8
[snip]

Looking at the updateinfo.xml itself:

<package arch="noarch" name="crow" release="1" src="http://www.fedoraproject.org" version="0.8">
        <filename>crow-0.8-1.noarch.rpm</filename>
      </package>

I'm pretty sure the issue is that the errata doesn't contain the epoch, so we can't include it in the errata metadata. I'd guess the assumption when writing this was that the errata was properly formatted, so there's no checks to indicate bad errata. We may want to look into that.

In the meantime, I'm not going to treat this as a 2.1.1 blocker under the rationale of bad repository. I'll leave it open to reconsider our assumptions about the data we're synccing.

Comment 3 Mike McCune 2013-05-02 18:18:19 UTC
we will take a look at RHEL updateinfo.xml to see if epoch is always included.

Comment 4 Brad Buckingham 2013-05-02 19:35:45 UTC
It looks like for the RHEL repo that I am using (which includes ~1800 errata), all 7026 packages that they references, have an epoch.  (For simplicity, I used the pulp-admin API to extract the data. :))

Comment 5 Mike McCune 2013-05-02 19:40:28 UTC
moved to sat6-pulp-future

Comment 6 Jay Dobies 2013-05-08 21:20:00 UTC
Since this can't be reproduced on a non-testing repo, I'm going to chalk it up to bad test data and close this out. We can reopen if it surfaces on a production repo.

Comment 7 Mike McCune 2013-05-09 04:40:40 UTC
+1 to closing this out


Note You need to log in before you can comment on or make changes to this bug.