Bug 147426

Summary: "yum update" installs multiple versions of same rpm, then fails
Product: [Fedora] Fedora Reporter: Konstantin Olchanski <olchansk>
Component: yumAssignee: Jeremy Katz <katzj>
Status: CLOSED RAWHIDE QA Contact:
Severity: high Docs Contact:
Priority: medium    
Version: 3CC: katzj
Target Milestone: ---   
Target Release: ---   
Hardware: i686   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2005-08-27 19:43:16 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Konstantin Olchanski 2005-02-07 22:35:58 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.2)
Gecko/20040806

Description of problem:
After a fresh installation of Fedora 3, running "yum update" for the
first time often (about half of the time) corrupts (or confuses) the
rpm database, and "yum update" stops working.

Once the system is in this state, "yum update" does not install
anything, but produces these errors for many packages, for example:
 Error: Missing Dependency: php is needed by package php-domxml

These errors are "correct": there are multiple versions of
"php-domxml" and they do confuse the yum dependancy checker, as they
should:
[root@karion ~]# rpm -q php-domxml
php-domxml-4.3.9-3
php-domxml-4.3.10-3.2
[root@karion ~]# rpm -q php
php-4.3.9-3

This is the failure I am complaining about. Why is yum/rpm/whoever
installs multiple versions of the same package?

This failure seems to be random: most often I get 1-2 duplicate
packages, this one time I got about 20 duplicates.

The fix is simple: manually remove the duplicates, then "yum update"
works fine.

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

How reproducible:
Sometimes

Steps to Reproduce:
1. Fresh install of Fedora 3, "custom", "all packages"
2. Run "yum -y update", it does something
3. Run "yum -y update" again, it fails, updates are not installed.

    

Actual Results:  Critical security updates are not installed.

Expected Results:  "yum -y update" should install as many packages as
it can. The present "fail on any error in any package" behaviour is silly.


Additional info:

Comment 1 Seth Vidal 2005-02-08 13:59:54 UTC
so half the time you run yum it corrupts your rpmdb? Is there anything
else going on that might cause that?

Additionally, failing on any error is the best way to make sure that
you're not missing any problems with packages that come along. It's
also a useful failsafe mode.

Have you experienced any other random system problems? like, for
example, programs segfaulting oddly?


Comment 2 Sitsofe Wheeler 2005-02-08 20:08:47 UTC
I've got a report of this happening to someone else too. The way round it was to
switch to a reliable fixed mirror and yum clean yum's cache then do a yum
update. Also making sure you aren't updating to rawhide is another good thing to
check.

Comment 3 Konstantin Olchanski 2005-02-09 01:38:30 UTC
To answer Seth Vidal- yes, I see the problem on known-good hardware.
These machines have been previously running RHL8.0 and RHL9, with
yum-based Fedora-legacy automatic updates, without any problems.

To answer Sitsofe Wheeler- 1) I do not know what mirrors I use- I use
the default yum confguration and if it points to iffy mirrors, that
would be a bug that should be fixed. (But note that iffy mirrors
should not confuse yum and corrupt the rpm database- that would be a
yum bug).

To answer Sitsofe Wheeler- 2) I do not know what "updating to rawhide"
is. I just want to install all the FC3 updates accumulated since the
FC3 CDs were originally released.

K.O.


Comment 4 Seth Vidal 2005-02-11 06:44:40 UTC
I'm not certain but I think that 147275 and this are actually the same bug.
I committed a change to cvs tonight that solves 147275 - I'm reasonably certain
it will close this, too.


Comment 5 Konstantin Olchanski 2005-02-11 07:37:40 UTC
From description bug 147275 looks quite different: there yum is confused by a
confused set of packages; while here yum starts with a consistent set of
packages (pristine installation) and confuses everything.

Anyhow, if I can have the updated yum rpm, I will put it to the test.

K.O.

Comment 6 Seth Vidal 2005-07-29 18:49:22 UTC
needinfo

Comment 7 Konstantin Olchanski 2005-08-07 02:14:33 UTC
I did not see this problem for quite a while until it happened on one of the FC3
machines last week. Our nightly update scripts started failing with this message:
                      linm9b.triumf.ca
                      Release Fedora3

Error: Missing Dependency: libstdc++-devel = 3.4.2 is needed by package gcc4-c++
Error: Missing Dependency: gcc = 3.4.2 is needed by package libtool
Error: Missing Dependency: libstdc++ = 3.4.2 is needed by package gcc4-c++
Repository updates-released already added, not adding again
Repository base already added, not adding again
Repository updates-released already added, not adding again
Repository base already added, not adding again
                      The End

And lo and behold, "rpm" shows two versions of gcc4-c++ installed:
[root@linm9b ~]# rpm -q gcc4-c++
gcc4-c++-4.0.0-0.8
gcc4-c++-4.0.0-0.41.fc3

The rpm is version rpm-4.3.2-21.
The yum is version yum-2.2.1-0.fc3

The original bug report was about this rpm confusion happening during the
initial installation when existance of updated rpm and yum did not help. Now
that FC4 is out, this bug is probably irrelevant. If FC4 shows this problem, I
can always refile it.

K.O.


Comment 8 Rahul Sundaram 2005-08-27 19:43:16 UTC

Closing this report as per the last comment. if you see this problem in FC4,
feel free to reopen this