Hanging yum

Yesterday I noticed a very strange problem with yum on my Fedora 6 notebook. It just plays dead after “Excluding Packages in global exclude list” message. This was not my first problem with yum but this one is the weirdest so far.
Without a clue what could cause such problem I used strace (tool I usually use when I have no clue why some software fails :)) to see if the process is really dead or it was actually doing something. Here is what I got:

[ home ~ ] # strace -p 12085
Process 12085 attached – interrupt to quit
futex(0x9fcc7b8, FUTEX_WAIT, 1, NULL …>

OK, so it was really stuck. And it was stuck on a futex system call which probaly means that yum didn’t exit cleanly on previous run, although I don’t remember it failed recently. As a matter of fact, two weeks ago I rebooted my notebook for the first time in 70 days (what I am trying to say is that it works perfectly :)

Anyway, simple google search on futex and yum reveals more users with similar problem. It seems that the source of the problem is corruption of RPM databases in /var/lib/rpm folder. Problem can be resolved in two ways. Either remove all ‘__db.*’ files from /var/lib/rpm folder or run /usr/lib/rpm/rpmdb_recover.

I somehow prefer the first solution – it gives more satisfaction. :)

2 Responses to “Hanging yum”

  1. 1 Jay Jun 17th, 2008 at 10:45 am

    Thanks for the post with good trick to recover hanging yum. It saved me plenty of time and frustration today, so, thanks. -Jay

  2. 2 Paul Wayper Aug 12th, 2008 at 7:01 am

    Thanks for this – yum is back from the zombie nation!

Comments are currently closed.