Bug 222450 - yum tracebacks on fc6 updates and causes rpmdb PANIC and errors, rendering rpmdb unusable
Summary: yum tracebacks on fc6 updates and causes rpmdb PANIC and errors, rendering rp...
Keywords:
Status: CLOSED DUPLICATE of bug 213963
Alias: None
Product: Fedora
Classification: Fedora
Component: yum
Version: 6
Hardware: All
OS: Linux
medium
high
Target Milestone: ---
Assignee: Jeremy Katz
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2007-01-12 16:34 UTC by Tadej Janež
Modified: 2014-01-21 22:56 UTC (History)
0 users

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2007-01-12 16:44:35 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Tadej Janež 2007-01-12 16:34:58 UTC
Description of problem:
Today I ran the usual 'yum update' and yum aborted unexpectedly with several
rpmdb errors, rendering rpmdb unusable.

Version-Release number of selected component (if applicable):
yum-3.0.1-2.fc6
rpm-4.4.2-32
kernel-2.6.18-1.2868.fc6
kernel-2.6.18-1.2869.fc6

How reproducible:
Don't know how to reproduce the original conditions that caused the first yum
traceback. Yum allways tracebacks from then now.

Steps to Reproduce:
1. sudo yum update
2.
3.
  
Actual results:
Yum tracebacks

Expected results:
FC6 system updates normally

Additional info:
Here is the output of the first yum run:
[tadej@tlinux-stable ~]$ sudo yum update
Password:
Loading "fastestmirror" plugin
Loading "installonlyn" plugin
Setting up Update Process
Setting up repositories
livna                     100% |=========================| 1.1 kB    00:00     
updates                   100% |=========================| 1.2 kB    00:00     
core                      100% |=========================| 1.1 kB    00:00     
macromedia                100% |=========================|  951 B    00:00     
extras                    100% |=========================| 1.1 kB    00:00     
Determining fastest mirrors
Reading repository metadata in from local files
primary.xml.gz            100% |=========================| 105 kB    00:01     
################################################## 319/319
primary.xml.gz            100% |=========================| 405 kB    00:04     
################################################## 1088/1088
primary.xml.gz            100% |=========================| 1.7 MB    00:28     
################################################## 5459/5459
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Downloading header for glibc-devel to pack into transaction set.
glibc-devel-2.5-10.fc6.i3 100% |=========================| 105 kB    00:01     
---> Package glibc-devel.i386 0:2.5-10.fc6 set to be updated
---> Downloading header for libgcj-src to pack into transaction set.
libgcj-src-4.1.1-51.fc6.i 100% |=========================|  48 kB    00:00     
---> Package libgcj-src.i386 0:4.1.1-51.fc6 set to be updated
---> Downloading header for xterm to pack into transaction set.
xterm-223-1.fc6.i386.rpm  100% |=========================|  11 kB    00:00     
---> Package xterm.i386 0:223-1.fc6 set to be updated
---> Downloading header for postgresql-libs to pack into transaction set.
postgresql-libs-8.1.6-1.f 100% |=========================|  15 kB    00:00     
---> Package postgresql-libs.i386 0:8.1.6-1.fc6 set to be updated
---> Downloading header for glibc to pack into transaction set.
glibc-2.5-10.fc6.i686.rpm 100% |=========================| 140 kB    00:01     
---> Package glibc.i686 0:2.5-10.fc6 set to be updated
---> Downloading header for xorg-x11-server-Xvfb to pack into transaction set.
xorg-x11-server-Xvfb-1.1. 100% |=========================|  30 kB    00:00     
---> Package xorg-x11-server-Xvfb.i386 0:1.1.1-47.4.fc6 set to be updated
---> Downloading header for glib-devel to pack into transaction set.
glib-devel-1.2.10-26.fc6. 100% |=========================| 7.7 kB    00:00     
---> Package glib-devel.i386 1:1.2.10-26.fc6 set to be updated
---> Downloading header for gimp-print-utils to pack into transaction set.
gimp-print-utils-4.2.7-23 100% |=========================| 7.1 kB    00:00     
---> Package gimp-print-utils.i386 0:4.2.7-23.fc6 set to be updated
---> Downloading header for libstdc++ to pack into transaction set.
libstdc++-4.1.1-51.fc6.i3 100% |=========================|  49 kB    00:00     
---> Package libstdc++.i386 0:4.1.1-51.fc6 set to be updated
---> Downloading header for glibc-common to pack into transaction set.
glibc-common-2.5-10.fc6.i 100% |=========================| 716 kB    00:08     
---> Package glibc-common.i386 0:2.5-10.fc6 set to be updated
---> Downloading header for autofs to pack into transaction set.
autofs-5.0.1-0.rc3.2.i386 100% |=========================|  45 kB    00:00     
---> Package autofs.i386 1:5.0.1-0.rc3.2 set to be updated
---> Downloading header for dbus-devel to pack into transaction set.
dbus-devel-1.0.1-9.fc6.i3 100% |=========================|  19 kB    00:00     
---> Package dbus-devel.i386 0:1.0.1-9.fc6 set to be updated
---> Downloading header for dbus to pack into transaction set.
dbus-1.0.1-9.fc6.i386.rpm 100% |=========================|  21 kB    00:00     
---> Package dbus.i386 0:1.0.1-9.fc6 set to be updated
---> Downloading header for libgomp to pack into transaction set.
libgomp-4.1.1-51.fc6.i386 100% |=========================|  49 kB    00:00     
---> Package libgomp.i386 0:4.1.1-51.fc6 set to be updated
---> Downloading header for gcc-c++ to pack into transaction set.
gcc-c++-4.1.1-51.fc6.i386 100% |=========================|  51 kB    00:00     
---> Package gcc-c++.i386 0:4.1.1-51.fc6 set to be updated
---> Downloading header for cpuspeed to pack into transaction set.
cpuspeed-1.2.1-1.43.fc6.i 100% |=========================| 7.5 kB    00:00     
---> Package cpuspeed.i386 1:1.2.1-1.43.fc6 set to be updated
---> Downloading header for wget to pack into transaction set.
wget-1.10.2-8.fc6.1.i386. 100% |=========================|  17 kB    00:00     
---> Package wget.i386 0:1.10.2-8.fc6.1 set to be updated
---> Downloading header for libgcj to pack into transaction set.
libgcj-4.1.1-51.fc6.i386. 100% |=========================|  56 kB    00:00     
---> Package libgcj.i386 0:4.1.1-51.fc6 set to be updated
---> Downloading header for gcc-java to pack into transaction set.
gcc-java-4.1.1-51.fc6.i38 100% |=========================|  51 kB    00:00     
---> Package gcc-java.i386 0:4.1.1-51.fc6 set to be updated
---> Downloading header for gimp-print to pack into transaction set.
gimp-print-4.2.7-23.fc6.i 100% |=========================|  26 kB    00:00     
---> Package gimp-print.i386 0:4.2.7-23.fc6 set to be updated
---> Downloading header for gcc-gfortran to pack into transaction set.
gcc-gfortran-4.1.1-51.fc6 100% |=========================|  51 kB    00:00     
---> Package gcc-gfortran.i386 0:4.1.1-51.fc6 set to be updated
---> Downloading header for wine-tools to pack into transaction set.
wine-tools-0.9.29-1.fc6.i 100% |=========================|  20 kB    00:00     
---> Package wine-tools.i386 0:0.9.29-1.fc6 set to be updated
---> Downloading header for gimp-print-plugin to pack into transaction set.
gimp-print-plugin-4.2.7-2 100% |=========================| 7.5 kB    00:00     
---> Package gimp-print-plugin.i386 0:4.2.7-23.fc6 set to be updated
---> Downloading header for krb5-libs to pack into transaction set.
krb5-libs-1.5-13.i386.rpm 100% |=========================|  35 kB    00:00     
---> Package krb5-libs.i386 0:1.5-13 set to be updated
---> Downloading header for krb5-devel to pack into transaction set.
krb5-devel-1.5-13.i386.rp 100% |=========================|  39 kB    00:00     
---> Package krb5-devel.i386 0:1.5-13 set to be updated
---> Downloading header for wine-core to pack into transaction set.
wine-core-0.9.29-1.fc6.i3 100% |=========================|  66 kB    00:00     
---> Package wine-core.i386 0:0.9.29-1.fc6 set to be updated
---> Downloading header for dbus-x11 to pack into transaction set.
dbus-x11-1.0.1-9.fc6.i386 100% |=========================|  17 kB    00:00     
---> Package dbus-x11.i386 0:1.0.1-9.fc6 set to be updated
---> Downloading header for glibc-headers to pack into transaction set.
glibc-headers-2.5-10.fc6. 100% |=========================| 138 kB    00:01     
---> Package glibc-headers.i386 0:2.5-10.fc6 set to be updated
---> Downloading header for libgcj-devel to pack into transaction set.
libgcj-devel-4.1.1-51.fc6 100% |=========================| 402 kB    00:05     
---> Package libgcj-devel.i386 0:4.1.1-51.fc6 set to be updated
---> Downloading header for nscd to pack into transaction set.
nscd-2.5-10.fc6.i386.rpm  100% |=========================| 100 kB    00:01     
---> Package nscd.i386 0:2.5-10.fc6 set to be updated
---> Downloading header for libstdc++-devel to pack into transaction set.
libstdc++-devel-4.1.1-51. 100% |=========================| 129 kB    00:01     
---> Package libstdc++-devel.i386 0:4.1.1-51.fc6 set to be updated
---> Downloading header for util-linux to pack into transaction set.
util-linux-2.13-0.45.4.fc 100% |=========================|  64 kB    00:00     
---> Package util-linux.i386 0:2.13-0.45.4.fc6 set to be updated
---> Downloading header for shadow-utils to pack into transaction set.
shadow-utils-4.0.17-11.fc 100% |=========================|  49 kB    00:00     
---> Package shadow-utils.i386 2:4.0.17-11.fc6 set to be updated
---> Downloading header for glib to pack into transaction set.
glib-1.2.10-26.fc6.i386.r 100% |=========================| 8.1 kB    00:00     
---> Package glib.i386 1:1.2.10-26.fc6 set to be updated
---> Downloading header for setup to pack into transaction set.
setup-2.6.1.1-1.fc6.noarc 100% |=========================|  18 kB    00:00     
---> Package setup.noarch 0:2.6.1.1-1.fc6 set to be updated
---> Downloading header for gcc-gnat to pack into transaction set.
gcc-gnat-4.1.1-51.fc6.i38 100% |=========================| 207 kB    00:02     
---> Package gcc-gnat.i386 0:4.1.1-51.fc6 set to be updated
---> Downloading header for lm_sensors to pack into transaction set.
lm_sensors-2.10.1-1.fc6.i 100% |=========================|  26 kB    00:00     
---> Package lm_sensors.i386 0:2.10.1-1.fc6 set to be updated
---> Downloading header for libgfortran to pack into transaction set.
libgfortran-4.1.1-51.fc6. 100% |=========================|  48 kB    00:00     
---> Package libgfortran.i386 0:4.1.1-51.fc6 set to be updated
---> Downloading header for libgnat to pack into transaction set.
libgnat-4.1.1-51.fc6.i386 100% |=========================|  48 kB    00:00     
---> Package libgnat.i386 0:4.1.1-51.fc6 set to be updated
---> Downloading header for cpp to pack into transaction set.
cpp-4.1.1-51.fc6.i386.rpm 100% |=========================|  52 kB    00:00     
---> Package cpp.i386 0:4.1.1-51.fc6 set to be updated
---> Downloading header for libgcc to pack into transaction set.
libgcc-4.1.1-51.fc6.i386. 100% |=========================|  49 kB    00:00     
---> Package libgcc.i386 0:4.1.1-51.fc6 set to be updated
---> Downloading header for gcc to pack into transaction set.
gcc-4.1.1-51.fc6.i386.rpm 100% |=========================|  59 kB    00:00     
---> Package gcc.i386 0:4.1.1-51.fc6 set to be updated
---> Downloading header for xorg-x11-server-Xorg to pack into transaction set.
xorg-x11-server-Xorg-1.1. 100% |=========================|  42 kB    00:00     
---> Package xorg-x11-server-Xorg.i386 0:1.1.1-47.4.fc6 set to be updated
--> Running transaction check

Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size 
=============================================================================
Updating:
 autofs                  i386       1:5.0.1-0.rc3.2  updates           766 k
 cpp                     i386       4.1.1-51.fc6     updates           2.6 M
 cpuspeed                i386       1:1.2.1-1.43.fc6  updates            28 k
 dbus                    i386       1.0.1-9.fc6      updates           471 k
 dbus-devel              i386       1.0.1-9.fc6      updates            38 k
 dbus-x11                i386       1.0.1-9.fc6      updates            28 k
 gcc                     i386       4.1.1-51.fc6     updates           4.9 M
 gcc-c++                 i386       4.1.1-51.fc6     updates           3.3 M
 gcc-gfortran            i386       4.1.1-51.fc6     updates           3.0 M
 gcc-gnat                i386       4.1.1-51.fc6     updates            11 M
 gcc-java                i386       4.1.1-51.fc6     updates           2.8 M
 gimp-print              i386       4.2.7-23.fc6     updates           2.4 M
 gimp-print-plugin       i386       4.2.7-23.fc6     updates            45 k
 gimp-print-utils        i386       4.2.7-23.fc6     updates            22 k
 glib                    i386       1:1.2.10-26.fc6  extras            137 k
 glib-devel              i386       1:1.2.10-26.fc6  extras             39 k
 glibc                   i686       2.5-10.fc6       updates           5.1 M
 glibc-common            i386       2.5-10.fc6       updates            16 M
 glibc-devel             i386       2.5-10.fc6       updates           2.0 M
 glibc-headers           i386       2.5-10.fc6       updates           605 k
 krb5-devel              i386       1.5-13           updates           1.7 M
 krb5-libs               i386       1.5-13           updates           590 k
 libgcc                  i386       4.1.1-51.fc6     updates            81 k
 libgcj                  i386       4.1.1-51.fc6     updates            17 M
 libgcj-devel            i386       4.1.1-51.fc6     updates           1.4 M
 libgcj-src              i386       4.1.1-51.fc6     updates            11 M
 libgfortran             i386       4.1.1-51.fc6     updates           218 k
 libgnat                 i386       4.1.1-51.fc6     updates           978 k
 libgomp                 i386       4.1.1-51.fc6     updates            69 k
 libstdc++               i386       4.1.1-51.fc6     updates           349 k
 libstdc++-devel         i386       4.1.1-51.fc6     updates           9.4 M
 lm_sensors              i386       2.10.1-1.fc6     updates           506 k
 nscd                    i386       2.5-10.fc6       updates           149 k
 postgresql-libs         i386       8.1.6-1.fc6      updates           195 k
 setup                   noarch     2.6.1.1-1.fc6    updates           126 k
 shadow-utils            i386       2:4.0.17-11.fc6  updates           1.0 M
 util-linux              i386       2.13-0.45.4.fc6  updates           1.8 M
 wget                    i386       1.10.2-8.fc6.1   updates           581 k
 wine-core               i386       0.9.29-1.fc6     extras            8.8 M
 wine-tools              i386       0.9.29-1.fc6     extras            558 k
 xorg-x11-server-Xorg    i386       1.1.1-47.4.fc6   updates           3.2 M
 xorg-x11-server-Xvfb    i386       1.1.1-47.4.fc6   updates           1.6 M
 xterm                   i386       223-1.fc6        updates           324 k

Transaction Summary
=============================================================================
Install      0 Package(s)         
Update      43 Package(s)         
Remove       0 Package(s)         

Total download size: 117 M
Is this ok [y/N]: y
Downloading Packages:
(1/43): glibc-devel-2.5-1 100% |=========================| 2.0 MB    00:27     
(2/43): libgcj-src-4.1.1- 100% |=========================|  11 MB    02:37     
(3/43): xterm-223-1.fc6.i 100% |=========================| 324 kB    00:03     
(4/43): postgresql-libs-8 100% |=========================| 195 kB    00:01     
(5/43): glibc-2.5-10.fc6. 100% |=========================| 5.1 MB    01:12     
(6/43): xorg-x11-server-X 100% |=========================| 1.6 MB    00:15     
(7/43): glib-devel-1.2.10 100% |=========================|  39 kB    00:00     
(8/43): gimp-print-utils- 100% |=========================|  22 kB    00:00     
(9/43): libstdc++-4.1.1-5 100% |=========================| 349 kB    00:03     
(10/43): glibc-common-2.5 100% |=========================|  16 MB    02:58     
(11/43): autofs-5.0.1-0.r 100% |=========================| 766 kB    00:07     
(12/43): dbus-devel-1.0.1 100% |=========================|  38 kB    00:00     
(13/43): dbus-1.0.1-9.fc6 100% |=========================| 471 kB    00:04     
(14/43): libgomp-4.1.1-51 100% |=========================|  69 kB    00:00     
(15/43): gcc-c++-4.1.1-51 100% |=========================| 3.3 MB    00:32     
(16/43): cpuspeed-1.2.1-1 100% |=========================|  28 kB    00:00     
(17/43): wget-1.10.2-8.fc 100% |=========================| 581 kB    00:05     
(18/43): libgcj-4.1.1-51. 100% |=========================|  17 MB    03:08     
(19/43): gcc-java-4.1.1-5 100% |=========================| 2.8 MB    00:41     
(20/43): gimp-print-4.2.7 100% |=========================| 2.4 MB    00:24     
(21/43): gcc-gfortran-4.1 100% |=========================| 3.0 MB    00:34     
(22/43): wine-tools-0.9.2 100% |=========================| 558 kB    00:07     
(23/43): gimp-print-plugi 100% |=========================|  45 kB    00:00     
(24/43): krb5-libs-1.5-13 100% |=========================| 590 kB    00:07     
(25/43): krb5-devel-1.5-1 100% |=========================| 1.7 MB    00:23     
(26/43): wine-core-0.9.29 100% |=========================| 8.8 MB    02:24     
(27/43): dbus-x11-1.0.1-9 100% |=========================|  28 kB    00:00     
(28/43): glibc-headers-2. 100% |=========================| 605 kB    00:07     
(29/43): libgcj-devel-4.1 100% |=========================| 1.4 MB    00:20     
(30/43): nscd-2.5-10.fc6. 100% |=========================| 149 kB    00:01     
(31/43): libstdc++-devel- 100% |=========================| 9.4 MB    02:07     
(32/43): util-linux-2.13- 100% |=========================| 1.8 MB    00:26     
(33/43): shadow-utils-4.0 100% |=========================| 1.0 MB    00:13     
(34/43): glib-1.2.10-26.f 100% |=========================| 137 kB    00:01     
(35/43): setup-2.6.1.1-1. 100% |=========================| 126 kB    00:01     
(36/43): gcc-gnat-4.1.1-5 100% |=========================|  11 MB    02:29     
(37/43): lm_sensors-2.10. 100% |=========================| 506 kB    00:06     
(38/43): libgfortran-4.1. 100% |=========================| 218 kB    00:02     
(39/43): libgnat-4.1.1-51 100% |=========================| 978 kB    00:12     
(40/43): cpp-4.1.1-51.fc6 100% |=========================| 2.6 MB    00:35     
(41/43): libgcc-4.1.1-51. 100% |=========================|  81 kB    00:00     
(42/43): gcc-4.1.1-51.fc6 100% |=========================| 4.9 MB    01:09     
(43/43): xorg-x11-server- 100% |=========================| 3.2 MB    00:46     
rpmdb: /var/lib/rpm/Packages: page 1379: unpinned page returned
rpmdb: PANIC: Invalid argument
error: db4 error(-30977) from dbcursor->c_get: DB_RUNRECOVERY: Fatal error, run
database recovery
warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
rpmdb: PANIC: fatal region error detected; run recovery
error: db4 error(-30977) from db->close: DB_RUNRECOVERY: Fatal error, run
database recovery
rpmdb: PANIC: fatal region error detected; run recovery
error: db4 error(-30977) from db->close: DB_RUNRECOVERY: Fatal error, run
database recovery
rpmdb: PANIC: fatal region error detected; run recovery
error: db4 error(-30977) from dbenv->close: DB_RUNRECOVERY: Fatal error, run
database recovery
rpmdb: PANIC: fatal region error detected; run recovery
error: db4 error(-30977) from dbenv->open: DB_RUNRECOVERY: Fatal error, run
database recovery
error: cannot open Packages index using db3 -  (-30977)
error: cannot open Packages database in /var/lib/rpm
Traceback (most recent call last):
  File "/usr/bin/yum", line 29, in ?
    yummain.main(sys.argv[1:])
  File "/usr/share/yum-cli/yummain.py", line 180, in main
    base.doTransaction()
  File "/usr/share/yum-cli/cli.py", line 407, in doTransaction
    if self.gpgsigcheck(downloadpkgs) != 0:
  File "/usr/share/yum-cli/cli.py", line 486, in gpgsigcheck
    self.getKeyForPackage(po, lambda x, y, z: self.userconfirm())
  File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 2003, in
getKeyForPackage
    if misc.keyInstalled(ts, keyid, timestamp) >= 0:
  File "/usr/lib/python2.4/site-packages/yum/misc.py", line 253, in keyInstalled
    for hdr in ts.dbMatch('name', 'gpg-pubkey'):
TypeError: rpmdb open failed

Subsequent yum run output:
[tadej@tlinux-stable ~]$ sudo yum update kernel
Password:
Loading "fastestmirror" plugin
Loading "installonlyn" plugin
rpmdb: PANIC: fatal region error detected; run recovery
error: db4 error(-30977) from dbenv->open: DB_RUNRECOVERY: Fatal error, run
database recovery
error: cannot open Packages index using db3 -  (-30977)
error: cannot open Packages database in /var/lib/rpm
Traceback (most recent call last):
  File "/usr/bin/yum", line 29, in ?
    yummain.main(sys.argv[1:])
  File "/usr/share/yum-cli/yummain.py", line 85, in main
    base.getOptionsConfig(args)
  File "/usr/share/yum-cli/cli.py", line 199, in getOptionsConfig
    errorlevel=opts.errorlevel)
  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

This is really annoying, as it is a quite tedious task to recover rpmdb manually.

Comment 1 Jeremy Katz 2007-01-12 16:44:35 UTC

*** This bug has been marked as a duplicate of 213963 ***


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