Bug 1627534
Summary: | A lot of errors "TransactionItem not found" during update | ||||||
---|---|---|---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Mikhail <mikhail.v.gavrilov> | ||||
Component: | dnf | Assignee: | rpm-software-management | ||||
Status: | CLOSED DUPLICATE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||
Severity: | high | Docs Contact: | |||||
Priority: | unspecified | ||||||
Version: | rawhide | CC: | awilliam, dmach, fweimer, mblaha, mhatina, packaging-team-maint, rpm-software-management, vmukhame, zbyszek | ||||
Target Milestone: | --- | ||||||
Target Release: | --- | ||||||
Hardware: | Unspecified | ||||||
OS: | Unspecified | ||||||
Whiteboard: | |||||||
Fixed In Version: | Doc Type: | If docs needed, set a value | |||||
Doc Text: | Story Points: | --- | |||||
Clone Of: | Environment: | ||||||
Last Closed: | 2018-09-12 16:30:31 UTC | Type: | Bug | ||||
Regression: | --- | Mount Type: | --- | ||||
Documentation: | --- | CRM: | |||||
Verified Versions: | Category: | --- | |||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
Cloudforms Team: | --- | Target Upstream Version: | |||||
Embargoed: | |||||||
Attachments: |
|
I'm seeing the same error, on a normal machine (a VM, but this shouldn't matter): =====================&<============================================= Cleanup : libvirt-daemon-driver-network-4.6.0-1.fc29.x86_64 633/752 Traceback (most recent call last): File "/usr/lib/python3.7/site-packages/dnf/yum/rpmtrans.py", line 253, in callback self._elemProgress(key, amount) File "/usr/lib/python3.7/site-packages/dnf/yum/rpmtrans.py", line 296, in _elemProgress _, _, tsi = self._extract_cbkey(key) File "/usr/lib/python3.7/site-packages/dnf/yum/rpmtrans.py", line 237, in _extract_cbkey raise RuntimeError("TransactionItem not found for key: %s" % cbkey) RuntimeError: TransactionItem not found for key: libvirt-daemon Traceback (most recent call last): File "/usr/lib/python3.7/site-packages/dnf/yum/rpmtrans.py", line 273, in callback self._script_start(key) File "/usr/lib/python3.7/site-packages/dnf/yum/rpmtrans.py", line 405, in _script_start pkg, _, _ = self._extract_cbkey(key) File "/usr/lib/python3.7/site-packages/dnf/yum/rpmtrans.py", line 237, in _extract_cbkey raise RuntimeError("TransactionItem not found for key: %s" % cbkey) RuntimeError: TransactionItem not found for key: libvirt-daemon ... Traceback (most recent call last): File "/usr/lib/python3.7/site-packages/dnf/yum/rpmtrans.py", line 273, in callback self._script_start(key) File "/usr/lib/python3.7/site-packages/dnf/yum/rpmtrans.py", line 405, in _script_start pkg, _, _ = self._extract_cbkey(key) File "/usr/lib/python3.7/site-packages/dnf/yum/rpmtrans.py", line 237, in _extract_cbkey raise RuntimeError("TransactionItem not found for key: %s" % cbkey) RuntimeError: TransactionItem not found for key: libvirt-daemon Cleanup : gdb-headless-8.1.90.20180727-44.fc30.x86_64 635/752 ... Failed: libvirt-daemon-4.1.0-1.fc29.x86_64 Error: Transaction failed =====================>&============================================= The traceback repeats maybe a 100 times. It seems I'm left with a duplicate package: $ rpm -q libvirt-daemon libvirt-daemon-4.1.0-1.fc29.x86_64 libvirt-daemon-4.7.0-1.fc30.x86_64 I'm setting high severity since this results in a failed transaction. *** This bug has been marked as a duplicate of bug 1625259 *** I think Zbigniew may have had a pre-existing dupe in his RPM database, and that may be a trigger for the bug. Note that we end up with libvirt-daemon-4.7.0-1.fc30 in the db, and the transaction logs this: Cleanup : libvirt-daemon-driver-network-4.6.0-1.fc29.x86_64 633/752 to me that looks a lot like the transaction was updating from 4.6.0-1.fc29 to 4.7.0-1.fc30. *But*, the rpm -qa shows this: $ rpm -q libvirt-daemon libvirt-daemon-4.1.0-1.fc29.x86_64 libvirt-daemon-4.7.0-1.fc30.x86_64 where'd that 4.1.0-1.fc29 come from, if we were going from 4.6.0-1 to 4.7.0-1 in the transaction? This suggests to me that *before* the 'dnf update', the RPM db *already* had duplicate entries for 4.1.0-1.fc29 and 4.6.0-1.fc29 , perhaps due to an earlier crashed update or something along those lines. And so perhaps updating a package which *already has* duplicate entries in the DB triggers the TransactionItem bug? |
Created attachment 1482227 [details] downgrade in chroot log Description of problem: Version-Release number of selected component (if applicable): # dnf --version 3.2.0 Installed: dnf-0:3.2.0-2.fc29.noarch at Fri 10 Aug 2018 11:42:27 AM GMT Built : Fedora Project at Wed 08 Aug 2018 04:52:11 PM GMT Installed: rpm-0:4.14.2-1.fc30.x86_64 at Fri 24 Aug 2018 03:02:15 AM GMT Built : Fedora Project at Tue 21 Aug 2018 11:33:49 AM GMT How reproducible: Steps to Reproduce: 1. Boot from LiveUSB 2. Look how recognized partitions. # fdisk -l 3. Create mount point # mkdir /mnt/point 4. Mount root и EFI partitions # mount /dev/nvme0n1p2 /mnt/point/ # mount /dev/nvme0n1p1 /mnt/point/boot/efi 5. Mount /proc # mount --bind /proc /mnt/point/proc 6. Enter in chroot # chroot /mnt/point/ 7. Look dnf history # dnf history 8. Try undone last update # dnf history undo 102 --refresh Actual results: A lot of error messages: Running transaction Preparing : 1/1 Running scriptlet: grub2-common-1:2.02-51.fc30.noarch 1/1 Downgrading : grub2-common-1:2.02-51.fc30.noarch 1/22 Downgrading : grub2-tools-minimal-1:2.02-51.fc30.x86_64 2/22 Downgrading : grub2-tools-extra-1:2.02-51.fc30.x86_64 3/22 Running scriptlet: grub2-tools-1:2.02-51.fc30.x86_64 4/22 Downgrading : grub2-tools-1:2.02-51.fc30.x86_64 4/22 Running scriptlet: grub2-tools-1:2.02-51.fc30.x86_64 4/22 Downgrading : grub2-pc-modules-1:2.02-51.fc30.noarch 5/22 Downgrading : grub2-pc-1:2.02-51.fc30.x86_64 6/22 Downgrading : grub2-efi-ia32-1:2.02-51.fc30.x86_64 7/22 Downgrading : grub2-efi-x64-1:2.02-51.fc30.x86_64 8/22 Downgrading : grub2-efi-ia32-cdboot-1:2.02-51.fc30.x86_64 9/22 Downgrading : grub2-efi-x64-cdboot-1:2.02-51.fc30.x86_64 10/22 Downgrading : grub2-tools-efi-1:2.02-51.fc30.x86_64 11/22 Traceback (most recent call last): File "/usr/lib/python3.7/site-packages/dnf/yum/rpmtrans.py", line 253, in callback self._elemProgress(key, amount) File "/usr/lib/python3.7/site-packages/dnf/yum/rpmtrans.py", line 296, in _elemProgress _, _, tsi = self._extract_cbkey(key) File "/usr/lib/python3.7/site-packages/dnf/yum/rpmtrans.py", line 237, in _extract_cbkey raise RuntimeError("TransactionItem not found for key: %s" % cbkey) RuntimeError: TransactionItem not found for key: grub2-pc Traceback (most recent call last): File "/usr/lib/python3.7/site-packages/dnf/yum/rpmtrans.py", line 265, in callback self._uninst_progress(amount, total, key) File "/usr/lib/python3.7/site-packages/dnf/yum/rpmtrans.py", line 347, in _uninst_progress _, _, tsi = self._extract_cbkey(key) File "/usr/lib/python3.7/site-packages/dnf/yum/rpmtrans.py", line 237, in _extract_cbkey raise RuntimeError("TransactionItem not found for key: %s" % cbkey) RuntimeError: TransactionItem not found for key: grub2-pc Traceback (most recent call last): File "/usr/lib/python3.7/site-packages/dnf/yum/rpmtrans.py", line 265, in callback self._uninst_progress(amount, total, key) File "/usr/lib/python3.7/site-packages/dnf/yum/rpmtrans.py", line 347, in _uninst_progress _, _, tsi = self._extract_cbkey(key) File "/usr/lib/python3.7/site-packages/dnf/yum/rpmtrans.py", line 237, in _extract_cbkey raise RuntimeError("TransactionItem not found for key: %s" % cbkey) RuntimeError: TransactionItem not found for key: grub2-pc but undone operation was successful. Expected results: No error messages. Additional info: