Bug 860802 - pulp doesnt handle errata spanning across multiple repos case
Summary: pulp doesnt handle errata spanning across multiple repos case
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Pulp
Classification: Retired
Component: rpm-support
Version: Master
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
: Sprint 40
Assignee: Todd Sanders
QA Contact: Preethi Thomas
URL:
Whiteboard:
Depends On: 860800 864999
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-09-26 18:29 UTC by Preethi Thomas
Modified: 2013-04-08 15:59 UTC (History)
3 users (show)

Fixed In Version:
Clone Of: 860800
Environment:
Last Closed: 2013-04-08 15:59:23 UTC
Embargoed:


Attachments (Terms of Use)

Description Preethi Thomas 2012-09-26 18:29:57 UTC
Cloning for pulp v2.0 
+++ This bug was initially created as a clone of Bug #860800 +++

Description from email from Andreas Piesk:

let's take errata RHBA-2012:1305 for example. Red Hat published for "RHEL 6 Workstation i386" the
following affected packages (see https://rhn.redhat.com/errata/RHBA-2012-1305.html):

openswan-2.6.32-19.el6_3.src.rpm
openswan-2.6.32-19.el6_3.i686.rpm
openswan-debuginfo-2.6.32-19.el6_3.i686.rpm
openswan-doc-2.6.32-19.el6_3.i686.rpm

this is an errata spanning multiple repos, namely 'optional' and 'os':

updateinfo.xml "rhel-i386-workstation-optional-6":

<id>RHBA-2012:1305</id>
<title>openswan bug fix update</title>
<issued date="2012-09-24 00:00:00"/><updated date="2012-09-24 00:00:00"/>
<pkglist><collection short="rhel-i386-workstation-optional-6">
<filename>openswan-doc-2.6.32-19.el6_3.i686.rpm</filename>
</collection>
</pkglist>


updateinfo.xml "rhel-i386-workstation-os-6":

<id>RHBA-2012:1305</id>
<title>openswan bug fix update</title>
<issued date="2012-09-24 00:00:00"/>
<updated date="2012-09-24 00:00:00"/>
<pkglist><collection short="rhel-i386-workstation-6">
<filename>openswan-2.6.32-19.el6_3.i686.rpm</filename>
</package></collection></pkglist>

but pulp-admin shows only one filename, the one from repo 'os':

$ pulp-admin errata info --id RHBA-2012:1305

Id                    	RHBA-2012:1305
Title                 	openswan bug fix update

Type                  	bugfix
Issued                	2012-09-24 00:00:00
Updated               	2012-09-24 00:00:00
Version               	1
Release               	
Status                	final
Packages Effected     	openswan-2.6.32-19.el6_3.i686.rpm
Reboot Suggested      	False
References            	
			href : https://rhn.redhat.com/errata/RHBA-2012-1305.html
			type : self
			id : None
			title : RHBA-2012:1305


a json dump of errata in 'class Info(ErrataAction)' shows:

    "id": "RHBA-2012:1305",
    "issued": "2012-09-24 00:00:00",
    "pkglist": [
        {
            "name": "Red Hat Enterprise Linux Workstation (v. 6 for 32-bit x86)",
            "packages": [
                {
                    "arch": "i686",
                    "epoch": "0",
                    "filename": "openswan-2.6.32-19.el6_3.i686.rpm",
                    "name": "openswan",
                    "release": "19.el6_3",
                    "src": "openswan-2.6.32-19.el6_3.src.rpm",
                    "sum": [
                        "sha256",
                        "02deefd2ab19a440da74992fa03ae1de7e9a2dd017fc42257981027ade0a7206"
                    ],
                    "version": "2.6.32"
                }
            ],
            "short": "rhel-i386-workstation-6"
        }
    ],
    "repoids": [
        "rhel6Workstation-i386-os",
        "rhel6Workstation-i386-optional"
    ],

as far as i understand the code, the first errata with this id, in this case from
"rhel6Workstation-i386-os" is stored and assigned to "rhel6Workstation-i386-os". the errata with the
same id from "rhel6Workstation-i386-optional" has the same timestamp and is ignored
(sync_updateinfo_data()) _but_ the id is saved and used in _add_erratum() to assign this errata to
"rhel6Workstation-i386-optional".
so basically the errata from one repo with a filelist x is used for all repos which have the same
errata but with a dfferent filelist.

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


How reproducible:


Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:

Comment 1 Pradeep Kilambi 2012-10-04 17:17:46 UTC
commit 3b4ad1856c96ebe6c325e8d0d86977009c4fbb8b

Comment 2 Jeff Ortel 2013-02-05 20:57:02 UTC
build: 2.1.0-0.3.alpha

Comment 88 Preethi Thomas 2013-04-01 15:17:54 UTC
[root@cloud-qe-8 ~]# rpm -q pulp-server
pulp-server-2.1.0-0.26.beta.noarch
[root@cloud-qe-8 ~]# 


[root@cloud-qe-8 ~]# pulp-admin rpm repo content  errata --erratum-id RHBA-2012:1305 --repo-id rhel6-w
+----------------------------------------------------------------------+
                        Erratum: RHBA-2012:1305
+----------------------------------------------------------------------+

Id:                RHBA-2012:1305
Title:             openswan bug fix update
Summary:           Updated openswan packages that fix a bug are now available for Red Hat
Enterprise Linux 6.

Description:
  Openswan is a free implementation of IPsec (Internet Protocol Security) and
  IKE(Internet Key Exchange) for Linux. The openswan packages contain daemons
  anduser-space tools for setting up Openswan. It supports the NETKEY/XFRM
  IPseckernel stack that exists in the default Linux kernel. Openswan 2.6 and
  lateralso supports IKEv2 (Internet Key Exchange Protocol version 2), which is
  definedin RFC5996.

  This update fixes the following bug:

  * When a tunnel was established between two IPsec hosts (say host1 and
  host2)utilizing DPD (Dead Peer Detection), and if host2 went offline while
  host1continued to transmit data, host1 continually queued multiple phase 2
  requestsafter the DPD action. When host2 came back online, the stack of
  pending phase 2requests was established, leaving a new IPsec SA (Security
  Association), and alarge group of extra SA's that consumed system resources
  and eventually expired.This update ensures that openswan has just a single
  pending phase 2 requestduring the time that host2 is down, and when host2
  comes back up, only a singlenew IPsec SA is established, thus preventing this
  bug. (BZ#852454)

  All users of openswan are advised to upgrade to these updated packages,
  whichfix this bug.

Severity:          
Type:              bugfix
Issued:            2012-09-24 00:00:00
Updated:           2012-09-24 00:00:00
Version:           1
Release:           
Status:            final
Reboot Suggested:  No

Updated Packages:
  openswan-0:2.6.32-19.el6_3.i686

References:
  ID:   None
  Type: self
  Link: https://rhn.redhat.com/errata/RHBA-2012-1305.html



[root@cloud-qe-8 ~]# pulp-admin rpm repo content  errata --erratum-id RHBA-2012:1305 --repo-id rhel6-w-optional
+----------------------------------------------------------------------+
                        Erratum: RHBA-2012:1305
+----------------------------------------------------------------------+

Id:                RHBA-2012:1305
Title:             openswan bug fix update
Summary:           Updated openswan packages that fix a bug are now available for Red Hat
Enterprise Linux 6.

Description:
  Openswan is a free implementation of IPsec (Internet Protocol Security) and
  IKE(Internet Key Exchange) for Linux. The openswan packages contain daemons
  anduser-space tools for setting up Openswan. It supports the NETKEY/XFRM
  IPseckernel stack that exists in the default Linux kernel. Openswan 2.6 and
  lateralso supports IKEv2 (Internet Key Exchange Protocol version 2), which is
  definedin RFC5996.

  This update fixes the following bug:

  * When a tunnel was established between two IPsec hosts (say host1 and
  host2)utilizing DPD (Dead Peer Detection), and if host2 went offline while
  host1continued to transmit data, host1 continually queued multiple phase 2
  requestsafter the DPD action. When host2 came back online, the stack of
  pending phase 2requests was established, leaving a new IPsec SA (Security
  Association), and alarge group of extra SA's that consumed system resources
  and eventually expired.This update ensures that openswan has just a single
  pending phase 2 requestduring the time that host2 is down, and when host2
  comes back up, only a singlenew IPsec SA is established, thus preventing this
  bug. (BZ#852454)

  All users of openswan are advised to upgrade to these updated packages,
  whichfix this bug.

Severity:          
Type:              bugfix
Issued:            2012-09-24 00:00:00
Updated:           2012-09-24 00:00:00
Version:           1
Release:           
Status:            final
Reboot Suggested:  No

Updated Packages:
  openswan-0:2.6.32-19.el6_3.i686

References:
  ID:   None
  Type: self
  Link: https://rhn.redhat.com/errata/RHBA-2012-1305.html



[root@cloud-qe-8 ~]#

Comment 89 Preethi Thomas 2013-04-08 15:59:23 UTC
Pulp 2.1 released 


http://www.pulpproject.org/2013/04/05/pulp-2-1-0-released/


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