Skip to navigation

Why rpm database gets corrupted on an interrupted yum update ?

Updated 2013-12-13T07:16:50+00:00

Issue

  • After accidental hit CTRL+C when a yum update was running, execution of yum command fails with an error:
~ # yum update
Loaded plugins: product-id, rhnplugin, security, subscription-manager, versionlock
Updating certificate-based repositories.
Unable to read consumer identity
Setting up Update Process
Resolving Dependencies
There are unfinished transactions remaining. You might consider running yum-complete-transaction first to finish them.
--> Running transaction check
---> Package glibc.x86_64 0:2.12-1.80.el6_3.4 will be updated
--> Processing Dependency: glibc = 2.12-1.80.el6_3.4 for package: glibc-common-2.12-1.80.el6_3.4.x86_64
---> Package glibc.x86_64 0:2.12-1.80.el6_3.5 will be an update
---> Package rhev-hypervisor-tools.noarch 0:2.3.0-15.el6_3.6 will be obsoleting
---> Package rhev-hypervisor6-tools.noarch 0:6.2-20120510.0.el6_2 will be obsoleted
--> Running transaction check
---> Package glibc.i686 0:2.12-1.80.el6_3.4 will be installed
--> Processing Dependency: libfreebl3.so(NSSRAWHASH_3.12.3) for package: glibc-2.12-1.80.el6_3.4.i686
--> Processing Dependency: libfreebl3.so for package: glibc-2.12-1.80.el6_3.4.i686
---> Package glibc.x86_64 0:2.12-1.80.el6_3.4 will be updated
--> Running transaction check
---> Package nss-softokn-freebl.i686 0:3.12.9-11.el6 will be installed
--> Finished Dependency Resolution
Error: Protected multilib versions: glibc-2.12-1.80.el6_3.4.i686 != glibc-2.12-1.80.el6_3.5.x86_64
 You could try using --skip-broken to work around the problem
** Found 2 pre-existing rpmdb problem(s), 'yum check' output follows:
glibc-common-2.12-1.80.el6_3.5.x86_64 is a duplicate with glibc-common-2.12-1.80.el6_3.4.x86_64
glibc-common-2.12-1.80.el6_3.5.x86_64 has missing requires of glibc = ('0', '2.12', '1.80.el6_3.5')
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 

'yum-complete-transaction' keeps looping at some point.

'package-cleanup --cleandupes' results in:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
--> Running transaction check
---> Package msv-xsdlib.noarch 0:1.2-0.20050722.10.ep5.el6 will be erased
--> Processing Dependency: /sbin/new-kernel-pkg for package: kernel-2.6.32-279.5.2.el6.x86_64
Skipping the running kernel: kernel-2.6.32-279.5.2.el6.x86_64
--> Processing Dependency: /sbin/new-kernel-pkg for package: kernel-2.6.32-279.5.2.el6.x86_64
Skipping the running kernel: kernel-2.6.32-279.5.2.el6.x86_64
--> Processing Dependency: /bin/sh for package: kernel-2.6.32-279.5.2.el6.x86_64
Skipping the running kernel: kernel-2.6.32-279.5.2.el6.x86_64
--> Processing Dependency: /bin/sh for package: kernel-2.6.32-279.5.2.el6.x86_64
Skipping the running kernel: kernel-2.6.32-279.5.2.el6.x86_64
--> Processing Dependency: /bin/sh for package: kernel-2.6.32-279.5.2.el6.x86_64
Skipping the running kernel: kernel-2.6.32-279.5.2.el6.x86_64
--> Restarting Dependency Resolution with new changes.
--> Running transaction check
--> Finished Dependency Resolution
Error: Trying to remove "yum", which is protected
 You could try using --skip-broken to work around the problem
** Found 2 pre-existing rpmdb problem(s), 'yum check' output follows:
glibc-common-2.12-1.80.el6_3.5.x86_64 is a duplicate with glibc-common-2.12-1.80.el6_3.4.x86_64
glibc-common-2.12-1.80.el6_3.5.x86_64 has missing requires of glibc = ('0', '2.12', '1.80.el6_3.5')
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 

Environment

  • Red Hat Enterprise Linux 6

Subscriber content preview. For full access to the Red Hat Knowledgebase, please log in.

Not a subscriber? Learn more about the benefits of Red Hat Subscriptions.