Ok, so I've discovered its not a problem with my test box. Yum updating to 3.3 hoses my rpmdb every time. The actual error is:
error: db4 error(-30989) from dbcursor->c_get: DB_PAGE_NOTFOUND: Requested page not found
The above is displayed when I run an rpm -qa |wc -l (which only reports 76 afterwards instead of 657 from before)
Nothing happened to the machine whilst it was updating, no errors appeared whilst yum was running.
After yum has finished there are the following files in /var/lib/rpm:
__db.001 __db.002 __db.003
If I delete those files /and then/ do a rpm --rebuilddb I seem to recover.
At a guess this is probably something todo with updating glibc and/or rpm in the same transaction, but I'm far from being an expert on these matters. Although I appear to have found a work-around for this problem, its leaves a bad taste in my mouth.
Anybody else have a better solution?
Tom.
Quoting Tom Seeley caosity@tomseeley.co.uk:
I'd guess this is probably something pretty specific to my test box, but when I yum updated to 3.3 my rpmdb got totally hosed. Unfortunately, I didn't save the error that occured at the time because a rpm --rebuilddb _appeared_ to fix the problem. Unfortunately I found out later that I was left with a db that only contained a subset of the actual install base. I'm now trying to recover from the /var/log/rpmpkgs file.
Later I will be adding /var/lib/rpm to my backups....
Like I said, its probably my machine (its old and naff), but I just thought I'd share :)
-- Tom Seeley
This message was sent using IMP, the Internet Messaging Program. _______________________________________________ CentOS mailing list CentOS@caosity.org http://www.caosity.org/mailman/listinfo/centos
-- Tom Seeley
---------------------------------------------------------------- This message was sent using IMP, the Internet Messaging Program.