Bug 744776

Summary: Yum preference of newer repomd.xml causes rhn scenario to fail
Product: Red Hat Enterprise Linux 5 Reporter: Šimon Lukašík <slukasik>
Component: rhn-client-toolsAssignee: Milan Zázrivec <mzazrivec>
Status: CLOSED WONTFIX QA Contact: Red Hat Satellite QA List <satqe-list>
Severity: low Docs Contact:
Priority: medium    
Version: 5.7CC: jhutar, jpazdziora
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 744775 Environment:
Last Closed: 2012-07-13 08:36:03 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On: 744775    
Bug Blocks:    

Description Šimon Lukašík 2011-10-10 12:44:51 UTC
This bug is also on rhel5.7 with
  yum-3.2.22-37.el5
  rhn-setup-0.4.20-56.el5
  yum-rhn-plugin-0.5.4-22.el5_7.2


+++ This bug was initially created as a clone of Bug #744775 +++

Description of problem:
When Yum downloads a repomd.xml which is older than one currently
in cache, Yum will ignore such downloaded repomd.xml. Unfortunately,
this behaviour causes problems for repositories from a different
source which has only the name in common.

For instance, when you have 2 RHN Satellite instances. (One prod,
with kinda older content and another one staging, with latest greatest).
And You decide to re-register a client machine from staging to prod
yum operations will fail, because of incorrect repomd.xml

This behaviour is regression against older RHELs.

The rhn registration should invalidate local Yum cache for channels,
which were added during the registration.

Version-Release number of selected component (if applicable):
yum-3.2.29-17.el6.noarch
rhn-setup-1.0.0-61.el6.noarch

How reproducible:
deterministic

Steps to Reproduce:
1. have 2 RHN Satellite instances
    - one with fresh rhel base channel synced
    - another with older rhel base channel content
2. register client machine to RHNS with newer channel content
3. # yum repolist
4. register client machine to RHNS with older channel content
5. # yum update
  
Actual results:
(4.)
# rhnreg_ks --username admin --password blabla --force
Not using downloaded repomd.xml because it is older than what we have:
  Current   : Mon Oct  3 12:14:44 2011
  Downloaded: Tue Jul 19 23:15:39 2011
(5.) # yum update
(...)
Error: failed to retrieve repodata/c1543a4026b030e016e786bd4808a5b75fa88609-filelists.xml.gz from rhel-x86_64-server-6
error was [Errno 14] HTTP Error 404: Not Found
 You could try using --skip-broken to work around the problem
 You could try running: package-cleanup --problems
                        package-cleanup --dupes
                        rpm -Va --nofiles --nodigest


Expected results:
registration should not print the warning
yum update should work without need of `yum clean'

Additional info:
The output of rhnreg_ks is emitted by Yum. Namely by:

    yum.yumRepo.YumRepository._groupCheckDataMDNewer()

Comment 2 RHEL Program Management 2012-04-02 10:40:33 UTC
This request was evaluated by Red Hat Product Management for inclusion
in a Red Hat Enterprise Linux release.  Product Management has
requested further review of this request by Red Hat Engineering, for
potential inclusion in a Red Hat Enterprise Linux release for currently
deployed products.  This request is not yet committed for inclusion in
a release.

Comment 3 Jan Pazdziora 2012-07-13 08:27:41 UTC
Given the fact that the RHEL 6 version of this bugzilla, bug 744775, has no customer case, not patch, and devel nack, I'm going to devel nack this bug as well, for the same reasons stated in bug 744775.

Comment 4 RHEL Program Management 2012-07-13 08:36:03 UTC
Development Management has reviewed and declined this request.
You may appeal this decision by reopening this request.