PDA

View Full Version : rpmdb open failed



Plossl
13th January 2007, 05:41 AM
My first bug report. Yay.

I entered the usual yum update and that's when it happened. I will tackle this and the bug report in the moring.

How do I go about fixing yum, or is there more that needs fixing?

Linux dsl12-p39.intrstar.net 2.6.18-1.2869.fc6 #1 SMP Wed Dec 20 14:51:19 EST 2006 i686 athlon i386 GNU/Linux



************************************************** *****************
Component: Software Updater
Summary: TBc3704fb6 config.py:656:_getsysver:TypeError: rpmdb open failed

Traceback (most recent call last):
File "/usr/sbin/pup", line 659, in ?
main()
File "/usr/sbin/pup", line 652, in main
pup = PackageUpdater()
File "/usr/sbin/pup", line 90, in __init__
GraphicalYumBase.__init__(self, False)
File "/usr/lib/python2.4/site-packages/pirut/__init__.py", line 124, in __init__
plugin_types=(yum.plugins.TYPE_CORE,))
File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 125, in doConfigSetup
self.conf = config.readMainConfig(startupconf)
File "/usr/lib/python2.4/site-packages/yum/config.py", line 597, in readMainConfig
yumvars['releasever'] = _getsysver(startupconf.installroot, startupconf.distroverpkg)
File "/usr/lib/python2.4/site-packages/yum/config.py", line 656, in _getsysver
idx = ts.dbMatch('provides', distroverpkg)
TypeError: rpmdb open failed

Local variables in innermost frame:
installroot: /
ts: <rpmUtils.transaction.TransactionWrapper instance at 0x9ea754c>
distroverpkg: redhat-release
************************************************** **********************

Seve
13th January 2007, 05:52 AM
Hello:
Most likely you need to rebuild the yum db

First step is ... as root
rm /var/lib/rpm/__db*

then to be safe reboot [your option ... you don't have to reboot]
and then run

rpm --rebuilddb

and
yum clean all
yum check-update

and hopefully you are good to go

Seve

Plossl
13th January 2007, 03:17 PM
Seve, that's impressive. Worked like a charm, even without a reboot.

Thank you. I will name my firstborn after you.