On Tue, 2007-01-23 at 23:27 +1100, David Timms wrote:
> This question seems to come up a lot. And the fedora-list usually has
> somebody asking how to recover from it. When 'yum' fails for whatever
> reason there will be some part of the 'cleanup' phase left undone. At
> which point the manual repair of the RPM DB needs to take place, a long
> and tedious task. At best even if you have the procedure as a (almost)
> single command line, it can be annoying.
> Any official plans to have yum gracefully recover from a failed update?
I think that there are a few different issues that appear to be the one
a. there was a time when running a rpm/yum/pup udpate within an X
session would cause an issue when reloading a config file, causing the X
session to restart. This meant that the update did not complete since
the package removals did not occur. It seemed the best way to clean the
double-up entries is to run dupes-cli.py.
b. there is a different issue where there might be a problem with the
rpmdb. If this occurs, an rpm -q kernel would work, but an rpm -qa|grep
kernel hangs, forever. If this is the case, the other rpm based tools
(yum/pup/pirut) also hang if an attempt is made to run them. In this
case it is necessary to do the ~ rm /var/lib/__db.00* to fix rpm.
And there is likely more (I don't know whether or not they are connected
to a. and b. above):
c. Situations in which accessing the rpmdb hangs and
rm /var/lib/rpm/__db* + rpm --rebuilddb does not help.
Whenever I have encountered such situations (at average twice a month
since FC6 is out - I've never seen this with FC5), rebooting seems have
helped for me.
Some people accuse filesystem and kernel bugs for this, but I don't have
any evidence if this is true or not.
d. Situations in which yum segfaults. I have increasingly encountered
them since the most recent kernel and yum update for FC6 (almost daily
e. The mmap bug - I don't know if this still applies, but this
reportedly seems to affect apt-get and can leave locked rpmdbs behind
(I've seen this myself)
f. Yum not degrading gracefully when being low on memory and leaving
locked rpmdb behind. I am not surprised to see yum going through the
root on "really small systems", but I've seen this happening on 256MB
RAM systems, which otherwise still are usable.
Sorry, if this might hurt some people, but I can't deny finding
yum/apt/rpm have never been more unstable and less reliable before, than
are on FC6.