I had a machine crash during a yum update (it oom'd during selinux policy upgrade). When I brought it back up after fscking, yum-complete-transaction doesn't succeed.. I don't know why it thinks the transaction size changed, as the package set to be installed hasn't changed on the local mirror. # yum-complete-transaction There are 1 outstanding transactions to complete. Finishing the most recent one The remaining transaction had 128 elements left to run Package selinux-policy-targeted-3.8.5-1.fc14.noarch already installed and latest version --> Running transaction check ---> Package bash.i686 0:4.1.7-1.fc14 set to be erased ---> Package bind.i686 32:9.7.1-0.1.b1.fc14 set to be erased ---> Package bind-chroot.i686 32:9.7.1-0.1.b1.fc14 set to be erased ---> Package bind-chroot.i686 32:9.7.1-0.2.rc1.fc14 set to be updated ---> Package bind-libs.i686 32:9.7.1-0.1.b1.fc14 set to be erased ---> Package bind-utils.i686 32:9.7.1-0.1.b1.fc14 set to be erased ---> Package binutils.i686 0:2.20.51.0.7-3.fc14 set to be erased ---> Package c-ares.i686 0:1.7.1-1.fc14 set to be erased ---> Package checkpolicy.i686 0:2.0.21-1.fc13 set to be erased ---> Package compat-db47.i686 0:4.7.25-2.fc13 set to be erased ---> Package cryptsetup-luks.i686 0:1.1.2-1.fc14 set to be erased ---> Package cryptsetup-luks-libs.i686 0:1.1.2-1.fc14 set to be erased ---> Package curl.i686 0:7.20.1-6.fc14 set to be erased ---> Package dash.i686 0:0.5.5.1-3.fc12 set to be erased ---> Package dbus.i686 1:1.2.24-1.fc13 set to be erased ---> Package dbus-libs.i686 1:1.2.24-1.fc13 set to be erased ---> Package device-mapper.i686 0:1.02.48-2.fc14 set to be erased ---> Package device-mapper-event.i686 0:1.02.48-2.fc14 set to be erased ---> Package device-mapper-event-libs.i686 0:1.02.48-2.fc14 set to be erased ---> Package device-mapper-libs.i686 0:1.02.48-2.fc14 set to be erased ---> Package diffutils.i686 0:2.8.1-28.fc14 set to be erased ---> Package dracut.noarch 0:005-3.fc13 set to be erased ---> Package fedora-logos.noarch 0:13.0.2-1.fc14 set to be erased ---> Package file.i686 0:5.04-8.fc14 set to be erased ---> Package file-libs.i686 0:5.04-8.fc14 set to be erased ---> Package fontconfig.i686 0:2.8.0-1.fc13 set to be erased ---> Package glib2.i686 0:2.25.7-1.fc14 set to be erased ---> Package glibc.i686 0:2.12.90-2 set to be erased ---> Package glibc-common.i686 0:2.12.90-2 set to be erased ---> Package gnupg2.i686 0:2.0.14-2.fc13 set to be erased ---> Package grep.i686 0:2.6.3-2.fc14 set to be erased ---> Package initscripts.i686 0:9.14-1.fc14 set to be erased ---> Package iproute.i686 0:2.6.33-2.fc14 set to be erased ---> Package js.i686 0:1.70-10.fc13 set to be erased ---> Package kbd.i686 0:1.15-9.fc12 set to be erased ---> Package kernel-PAE.i686 0:2.6.34-20.fc14 set to be erased ---> Package kernel-PAE.i686 0:2.6.35-0.2.rc3.git0.fc14 set to be installed ---> Package krb5-libs.i686 0:1.8.1-6.fc14 set to be erased ---> Package libX11.i686 0:1.3.1-3.fc14 set to be erased ---> Package libX11-common.noarch 0:1.3.1-3.fc14 set to be erased ---> Package libXext.i686 0:1.1-2.fc13 set to be erased ---> Package libXrender.i686 0:0.9.5-1.fc13 set to be erased ---> Package libblkid.i686 0:2.17.2-4.fc13 set to be erased ---> Package libcap-ng.i686 0:0.6.4-2.fc14 set to be erased ---> Package libcurl.i686 0:7.20.1-6.fc14 set to be erased ---> Package libdrm.i686 0:2.4.21-0.1.fc14 set to be erased ---> Package libdrm.i686 0:2.4.21-2.fc14 set to be updated ---> Package libevent.i686 0:1.4.13-2.fc14 set to be erased ---> Package libgcc.i686 0:4.4.4-6.fc14 set to be erased ---> Package libnih.i686 0:1.0.1-6.fc14 set to be erased ---> Package libprelude.i686 1:1.0.0-3.fc14 set to be erased ---> Package libselinux.i686 0:2.0.92-1.fc14 set to be erased ---> Package libselinux-python.i686 0:2.0.92-1.fc14 set to be erased ---> Package libselinux-utils.i686 0:2.0.92-1.fc14 set to be erased ---> Package libsepol.i686 0:2.0.41-3.fc13 set to be erased ---> Package libstdc++.i686 0:4.4.4-6.fc14 set to be erased ---> Package libsysfs.i686 0:2.1.0-7.fc13 set to be erased ---> Package libtool-ltdl.i686 0:2.2.6-20.fc14 set to be erased ---> Package libudev.i686 0:156-2.fc14 set to be erased ---> Package libusb.i686 0:0.1.12-22.fc12 set to be erased ---> Package libuuid.i686 0:2.17.2-4.fc13 set to be erased ---> Package logrotate.i686 0:3.7.8-9.fc14 set to be erased ---> Package lvm2.i686 0:2.02.66-2.fc14 set to be erased ---> Package lvm2-libs.i686 0:2.02.66-2.fc14 set to be erased ---> Package make.i686 1:3.81-18.fc12 set to be erased ---> Package mc.i686 1:4.7.2-1.fc14 set to be erased ---> Package net-snmp.i686 1:5.5-12.fc13 set to be erased ---> Package net-snmp-libs.i686 1:5.5-12.fc13 set to be erased ---> Package net-snmp-utils.i686 1:5.5-12.fc13 set to be erased ---> Package net-tools.i686 0:1.60-102.fc14 set to be erased ---> Package nfs-utils.i686 1:1.2.2-4.fc14 set to be erased ---> Package nmap.i686 2:5.21-2.fc14 set to be erased ---> Package nscd.i686 0:2.12.90-2 set to be erased ---> Package nss.i686 0:3.12.6-5.fc14 set to be erased ---> Package nss-softokn.i686 0:3.12.4-21.fc14 set to be erased ---> Package nss-softokn-freebl.i686 0:3.12.4-21.fc14 set to be erased ---> Package nss-sysinit.i686 0:3.12.6-5.fc14 set to be erased ---> Package nss-tools.i686 0:3.12.6-5.fc14 set to be erased ---> Package openssh.i686 0:5.5p1-12.fc14 set to be erased ---> Package openssh-clients.i686 0:5.5p1-12.fc14 set to be erased ---> Package openssh-server.i686 0:5.5p1-12.fc14 set to be erased ---> Package openssl.i686 0:1.0.0-5.fc14 set to be erased ---> Package perf.noarch 0:2.6.34-20.fc14 set to be erased ---> Package perl.i686 4:5.10.1-118.fc14 set to be erased ---> Package perl-Date-Manip.noarch 0:6.07-1.fc14 set to be erased ---> Package perl-ExtUtils-MakeMaker.noarch 0:6.55-118.fc14 set to be erased ---> Package perl-ExtUtils-ParseXS.noarch 1:2.20-118.fc14 set to be erased ---> Package perl-IO-Socket-INET6.noarch 0:2.57-1.fc13 set to be erased ---> Package perl-IO-Socket-INET6.noarch 0:2.57-2.fc14 set to be updated ---> Package perl-Module-Pluggable.noarch 1:3.90-118.fc14 set to be erased ---> Package perl-Pod-Escapes.noarch 1:1.04-118.fc14 set to be erased ---> Package perl-Pod-Simple.noarch 1:3.07-118.fc14 set to be erased ---> Package perl-SNMP_Session.noarch 0:1.12-4.fc13 set to be erased ---> Package perl-SNMP_Session.noarch 0:1.12-5.fc14 set to be updated ---> Package perl-Socket6.i686 0:0.23-3.fc13 set to be erased ---> Package perl-Test-Harness.noarch 0:3.17-118.fc14 set to be erased ---> Package perl-YAML-Syck.i686 0:1.07-3.fc13 set to be erased ---> Package perl-devel.i686 4:5.10.1-118.fc14 set to be erased ---> Package perl-libs.i686 4:5.10.1-118.fc14 set to be erased ---> Package perl-version.i686 3:0.82-1.fc13 set to be erased ---> Package perl-version.noarch 3:0.82-123.fc14 set to be updated ---> Package policycoreutils.i686 0:2.0.82-26.fc14 set to be erased ---> Package policycoreutils-python.i686 0:2.0.82-26.fc14 set to be erased ---> Package psacct.i686 0:6.5.4-3.fc14 set to be erased ---> Package python.i686 0:2.6.5-12.fc14 set to be erased ---> Package python-iniparse.noarch 0:0.3.1-2.fc13 set to be erased ---> Package python-libs.i686 0:2.6.5-12.fc14 set to be erased ---> Package rpm.i686 0:4.8.0-18.fc14 set to be erased ---> Package rpm-libs.i686 0:4.8.0-18.fc14 set to be erased ---> Package rpm-python.i686 0:4.8.0-18.fc14 set to be erased ---> Package selinux-policy.noarch 0:3.8.1-5.fc14 set to be erased ---> Package selinux-policy-targeted.noarch 0:3.8.1-5.fc14 set to be erased ---> Package sendmail.i686 0:8.14.4-5.fc14 set to be erased ---> Package sendmail-cf.noarch 0:8.14.4-5.fc14 set to be erased ---> Package sendmail-cf.noarch 0:8.14.4-8.fc14 set to be updated ---> Package setup.noarch 0:2.8.20-1.fc14 set to be erased ---> Package shadow-utils.i686 2:4.1.4.2-6.fc14 set to be erased ---> Package tcp_wrappers.i686 0:7.6-58.fc13 set to be erased ---> Package tcp_wrappers-libs.i686 0:7.6-58.fc13 set to be erased ---> Package udev.i686 0:156-2.fc14 set to be erased ---> Package util-linux-ng.i686 0:2.17.2-4.fc13 set to be erased ---> Package vim-common.i686 2:7.2.441-1.fc14 set to be erased ---> Package vim-enhanced.i686 2:7.2.441-1.fc14 set to be erased ---> Package vim-minimal.i686 2:7.2.441-1.fc14 set to be erased ---> Package yum.noarch 0:3.2.27-14.fc14 set to be erased ---> Package yum-utils.noarch 0:1.1.26-7.fc14 set to be erased ---> Package zlib.i686 0:1.2.5-1.fc14 set to be erased --> Finished Dependency Resolution --> Running transaction check ---> Package kernel-PAE.i686 0:2.6.33.4-95.fc13 set to be erased --> Finished Dependency Resolution Transaction size changed - this means we are not doing the same transaction as we were before. Aborting and disabling this transaction. You could try running: package-cleanup --problems package-cleanup --dupes rpm -Va --nofiles --nodigest Transaction files renamed to: /var/lib/yum/transaction-all.2010-06-29.00:42.32.disabled /var/lib/yum/transaction-done.2010-06-29.00:42.32.disabled # package-cleanup --problems No Problems Found
Dave, Can you attach these two files: /var/lib/yum/transaction-all.2010-06-29.00:42.32.disabled /var/lib/yum/transaction-done.2010-06-29.00:42.32.disabled and the output of: rpm -qa and package-cleanup --dupes thanks
Created attachment 427755 [details] all
Created attachment 427756 [details] done
Created attachment 427758 [details] rpm -qa
Created attachment 427759 [details] --dupes
okay - so here's what happened. selinux-policy-targeted-3.8.5-1.fc14.noarch was installed but your system oomed before finishing the install and yum could not count it as installed in the transaction-done. So when you go to complete the transaction yum tries to install it again, it says 'it is already installed' so the number of items yum thought it had to do doesn't match anymore and it bails out to avoid, obliterating your system. I'll add some code to yum-complete-transaction to discount the operation by the number of pkgs if some of them report back already installed. Can you test a patch if I get you one quickly?
Correction. - I'm not entirely right on something here. need some more info. can you rename the files from .disabled and run yum-complete-transaction -d 7 please I need some more info on whast the depsolve is adding to the transaction. thanks
ah - I might have found it. Did you remove or install a kernel in between the yum run which oom'd and the y-c-t run?
I don't recall doing so. (debug info coming soon..)
Created attachment 427772 [details] -d7 info
Talked to dave a bit on irc and figured out what happened. 1. system was running kernel-PAE 0:2.6.33.4-95.fc13 when he did the original update 2. yum would have wanted to remove that kernel b/c of installonly_limit but could not b/c it was the running kernel 3. transaction runs and system ooms then reboots 4. y-c-t runs and when it goes to build the transaction it can now remove that kernel so it adds the kernel as a removal to the transaction. 5. what should have happened from the transaction journal and what was going to happen differed so y-c-t bailed to keep things safer. 6. Dave rebooted back into the 2.6.33 kernel, ran y-c-t and it cleaned up the transaction properly. So - our options are: add code to y-c-t and yum to tell it to 'not' clean up things post-depsolve in buildtransaction - just do what the transaction journal said to do. or Not - since this is a kinda hairy edge case. anyone have any thoughts?
This bug appears to have been reported against 'rawhide' during the Fedora 14 development cycle. Changing version to '14'. More information and reason for this action is here: http://fedoraproject.org/wiki/BugZappers/HouseKeeping
This message is a notice that Fedora 14 is now at end of life. Fedora has stopped maintaining and issuing updates for Fedora 14. It is Fedora's policy to close all bug reports from releases that are no longer maintained. At this time, all open bugs with a Fedora 'version' of '14' have been closed as WONTFIX. (Please note: Our normal process is to give advanced warning of this occurring, but we forgot to do that. A thousand apologies.) Package Maintainer: If you wish for this bug to remain open because you plan to fix it in a currently maintained version, feel free to reopen this bug and simply change the 'version' to a later Fedora version. Bug Reporter: Thank you for reporting this issue and we are sorry that we were unable to fix it before Fedora 14 reached end of life. If you would still like to see this bug fixed and are able to reproduce it against a later version of Fedora, you are encouraged to click on "Clone This Bug" (top right of this page) and open it against that version of Fedora. Although we aim to fix as many bugs as possible during every release's lifetime, sometimes those efforts are overtaken by events. Often a more recent Fedora release includes newer upstream software that fixes bugs or makes them obsolete. The process we are following is described here: http://fedoraproject.org/wiki/BugZappers/HouseKeeping