Bug 130260 - yum upgrade traceback -> rpm inconsistency
yum upgrade traceback -> rpm inconsistency
Status: CLOSED WORKSFORME
Product: Fedora
Classification: Fedora
Component: rpm (Show other bugs)
rawhide
All Linux
medium Severity high
: ---
: ---
Assigned To: Jeff Johnson
Mike McLean
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2004-08-18 11:44 EDT by Daniel Reed
Modified: 2007-11-30 17:10 EST (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2004-08-21 10:21:52 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Daniel Reed 2004-08-18 11:44:24 EDT
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.2)
Gecko/20040809

Description of problem:
I yum upgraded this morning, over NFS over VPN over Wi-Fi, and at one
point the NFS volume became unavailable.

yum exitted, citing an I/O error as the root cause in the backtrace. I
did not save the complete backtrace.

The upgrade was less than halfway through with ~120 transactions.

Afterwards, yum upgrade did not acknowledge the remaining
transactions. I did not inspect the rpm data base at the time, and do
not know what its state was.

I tried yum clean with no change.

I tried rpm --rebuilddb with no change.

Now, I am seeing:
[dreed@localhost dreed]$ rpm -qf `which gaim` `which xchat`
gaim-0.81-7
file /usr/bin/xchat is not owned by any package
[dreed@localhost dreed]$ rpm -q gaim xchat
gaim-0.81-7
package xchat is not installed
[dreed@localhost dreed]$ ls -l /usr/bin/xchat
-rwxr-xr-x  1 root root 417200 Aug 15 22:23 /usr/bin/xchat
[dreed@localhost dreed]$

I do not know if this inconsistency existed before the rpm --rebuilddb
(it did not occur before the yum failure) or if it was caused due to
the yum failure and the subsequent data base rebuild.

An xchat upgrade was one of the 120 transactions. I am not sure if the
xchat upgrade occurred before the yum failure or if it was scheduled
to occur afterwards.

Upgrades for both gcc and libgcc were included in the 120
transactions, and I am nearly certain they did occur before the yum
failure. rpm -q does report the current (post-upgrade) version is
installed for both.

Version-Release number of selected component (if applicable):
rpm-4.3.2-0.6 yum-2.0.7-3

How reproducible:
Didn't try

Steps to Reproduce:
I have heard of this problem before, but do not recall the steps to
work around it, nor can I find anyone who does recall them.

Additional info:
Comment 1 Jeff Johnson 2004-08-18 22:28:28 EDT
rpm -q --last will report headers sorted by install time.

Anything that is not in that output is not installed.

The top few items may not have completed erasure if upgrading.
Look for duplicate package names in
    rpm -qa | sort
and reinstall any packages that are duplicated. Use --force
if necessary.

The fix for
    rpm -qf /usr/bin/xchat
    package xchat is not installed
is to reinstall xchat.

Nuking /var/cache/yum/* is likely to force yum
to relearn what is available, and what is installed.
Perhaps there is simpler solution, dunno.

rpm --rebuilddb is almost always unnecessary these days.
OTOH, won't hurt even if it does not help.

Does that fix your problem?

   
Comment 2 Daniel Reed 2004-08-18 23:12:05 EDT
I tried destroying /var/cache/yum/*, with no change.


Unfortunately, xchat is not the only package rpm is confused about
after the yum crash:
file /usr/bin/c++ is not owned by any package
file /usr/bin/c++filt is not owned by any package
file /usr/bin/ecj is not owned by any package
file /usr/bin/etags is not owned by any package
file /usr/bin/g++ is not owned by any package
file /usr/bin/gnat is not owned by any package
file /usr/bin/gnatbind is not owned by any package
file /usr/bin/gnatbl is not owned by any package
file /usr/bin/gnatchop is not owned by any package
file /usr/bin/gnatclean is not owned by any package
file /usr/bin/gnatfind is not owned by any package
file /usr/bin/gnatgcc is not owned by any package
file /usr/bin/gnatkr is not owned by any package
file /usr/bin/gnatlink is not owned by any package
file /usr/bin/gnatls is not owned by any package
file /usr/bin/gnatmake is not owned by any package
file /usr/bin/gnatname is not owned by any package
file /usr/bin/gnatprep is not owned by any package
file /usr/bin/gnatxref is not owned by any package
file /usr/bin/gpr2make is not owned by any package
file /usr/bin/gprcmd is not owned by any package
file /usr/bin/i386-redhat-linux-c++ is not owned by any package
file /usr/bin/i386-redhat-linux-g++ is not owned by any package
file /usr/bin/jar is not owned by any package
file /usr/bin/java is not owned by any package
file /usr/bin/javac is not owned by any package
file /usr/bin/java_cup is not owned by any package
file /usr/bin/jlex is not owned by any package
file /usr/bin/nex is not owned by any package
file /usr/bin/ntpstat is not owned by any package
file /usr/bin/nvi is not owned by any package
file /usr/bin/nview is not owned by any package
file /usr/bin/pico is not owned by any package
file /usr/bin/recompile is not owned by any package
file /usr/bin/rmic is not owned by any package
file /usr/bin/rmiregistry is not owned by any package
file /usr/bin/tsclient is not owned by any package
file /usr/bin/xsltc is not owned by any package
file /usr/bin/xsltp is not owned by any package
file /usr/lib/anaconda-runtime is not owned by any package
file /usr/lib/brltty is not owned by any package
file /usr/lib/dbd is not owned by any package
file /usr/lib/debug is not owned by any package
file /usr/lib/gconv is not owned by any package
file /usr/lib/gkrellm2 is not owned by any package
file /usr/lib/gnome-spell is not owned by any package
file /usr/lib/gtkhtml is not owned by any package
file /usr/lib/hotplug is not owned by any package
file /usr/lib/lam is not owned by any package
file /usr/lib/libboost_date_time.so.1 is not owned by any package
file /usr/lib/libboost_filesystem.so.1 is not owned by any package
file /usr/lib/libboost_prg_exec_monitor.so.1 is not owned by any package
file /usr/lib/libboost_python.so.1 is not owned by any package
file /usr/lib/libboost_regex.so.1 is not owned by any package
file /usr/lib/libboost_signals.so.1 is not owned by any package
file /usr/lib/libboost_test_exec_monitor.so.1 is not owned by any package
file /usr/lib/libboost_thread.so.1 is not owned by any package
file /usr/lib/libboost_unit_test_framework.so.1 is not owned by any
package
file /usr/lib/libcrack.so.2 is not owned by any package
file /usr/lib/libgaim-remote.so.0 is not owned by any package
file /usr/lib/lib-gnu-mail-providers-imap.so is not owned by any package
file /usr/lib/lib-gnu-mail-providers-maildir.so is not owned by any
package
file /usr/lib/lib-gnu-mail-providers-mbox.so is not owned by any package
file /usr/lib/lib-gnu-mail-providers-pop3.so is not owned by any package
file /usr/lib/lib-gnu-mail-providers-smtp.so is not owned by any package
file /usr/lib/libg++.so.2.7.2 is not owned by any package
file /usr/lib/lib-java_cup-runtime.so is not owned by any package
file /usr/lib/lib-java_cup.so is not owned by any package
file /usr/lib/lib-javax-activation.so is not owned by any package
file /usr/lib/lib-javax-mail.so is not owned by any package
file /usr/lib/lib-javax-xml-parsers.so is not owned by any package
file /usr/lib/lib-javax-xml-transform.so is not owned by any package
file /usr/lib/lib-JLex.so is not owned by any package
file /usr/lib/lib-junit.so is not owned by any package
file /usr/lib/libkrbafs.so.0 is not owned by any package
file /usr/lib/lib-org-apache-bcel.so is not owned by any package
file /usr/lib/lib-org-apache-commons-beanutils.so is not owned by any
package
file /usr/lib/lib-org-apache-commons-collections.so is not owned by
any package
file /usr/lib/lib-org-apache-commons-dbcp.so is not owned by any package
file /usr/lib/lib-org-apache-commons-digester.so is not owned by any
package
file /usr/lib/lib-org-apache-commons-fileupload.so is not owned by any
package
file /usr/lib/lib-org-apache-commons-jocl.so is not owned by any package
file /usr/lib/lib-org-apache-commons-logging.so is not owned by any
package
file /usr/lib/lib-org-apache-commons-modeler.so is not owned by any
package
file /usr/lib/lib-org-apache-commons-pool.so is not owned by any package
file /usr/lib/lib-org-apache-html.so is not owned by any package
file /usr/lib/lib-org-apache-regexp.so is not owned by any package
file /usr/lib/lib-org-apache-tools-ant.so is not owned by any package
file /usr/lib/lib-org-apache-tools-ant-taskdefs-optional.so is not
owned by any package
file /usr/lib/lib-org-apache-tools-ant-types-optional.so is not owned
by any package
file /usr/lib/lib-org-apache-tools-ant-util-optional.so is not owned
by any package
file /usr/lib/lib-org-apache-tools-bzip2.so is not owned by any package
file /usr/lib/lib-org-apache-tools-mail.so is not owned by any package
file /usr/lib/lib-org-apache-tools-tar.so is not owned by any package
file /usr/lib/lib-org-apache-tools-zip.so is not owned by any package
file /usr/lib/lib-org-apache-wml.so is not owned by any package
file /usr/lib/lib-org-apache-xalan.so is not owned by any package
file /usr/lib/lib-org-apache-xalan-xsltc.so is not owned by any package
file /usr/lib/lib-org-apache-xerces.so is not owned by any package
file /usr/lib/lib-org-eclipse-jdt-core-compiler.so is not owned by any
package
file /usr/lib/lib-org-eclipse-jdt-internal-compiler.so is not owned by
any package
file /usr/lib/lib-org-w3c-dom-xpath.so is not owned by any package
file /usr/lib/libparted.a is not owned by any package
file /usr/lib/libsmbclient.so.0 is not owned by any package
file /usr/lib/libstdc++-libc6.1-1.so.2 is not owned by any package
file /usr/lib/libstdc++.so.2.7.2 is not owned by any package
file /usr/lib/libstdc++.so.2.8 is not owned by any package
file /usr/lib/libstdc++.so.2.9 is not owned by any package
file /usr/lib/libuser.so.1 is not owned by any package
file /usr/lib/mozilla is not owned by any package
file /usr/lib/mozilla-1.7 is not owned by any package
file /usr/lib/news is not owned by any package
file /usr/lib/pwlib is not owned by any package
file /usr/lib/python2.2 is not owned by any package
file /usr/lib/quagga is not owned by any package
file /usr/lib/rpmdb is not owned by any package
file /usr/lib/sendmail is not owned by any package
file /usr/lib/sse2 is not owned by any package
file /usr/lib/tk8.4 is not owned by any package
file /usr/lib/xchat is not owned by any package

/usr/bin/pico is the only entry I added myself (it is a symlink to
nano). I have manually reinstalled xchat, but I am not looking forward
to having to guess which other packages may need to be manually
reinstalled.
Comment 3 Jeff Johnson 2004-08-21 10:21:52 EDT
The fix is the same, reinstalling the packages. You can
try rm -f /var/lib/rpm/__db* to remove the database cache,
that can become inconsistent with execptional exits like EIO.

There's enough other variables in your scenario that is not possible
to guess a mechanism.

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