Bug 1622449 - _transaction.Swdb_endTransaction(): RuntimeError: ... TransactionItem state is not set:
Summary: _transaction.Swdb_endTransaction(): RuntimeError: ... TransactionItem state i...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: libdnf
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Daniel Mach
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 1615770
TreeView+ depends on / blocked
 
Reported: 2018-08-27 08:40 UTC by Jaroslav Rohel
Modified: 2018-09-20 22:35 UTC (History)
5 users (show)

Fixed In Version: libdnf-0.19.1-3.fc29
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2018-09-20 22:35:36 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Bugzilla 1629340 0 unspecified CLOSED PackageKit update crashes at end of transaction with "TransactionItem state is not set: grub2-tools-1:2.02-57.fc29.x86_6... 2021-02-22 00:41:40 UTC

Internal Links: 1629340

Description Jaroslav Rohel 2018-08-27 08:40:37 UTC
Description of problem:
DNF ended with traceback during "dnf upgrade" command. 

Traceback (most recent call last):
  File "/usr/bin/dnf", line 58, in <module>
    main.user_main(sys.argv[1:], exit_code=True)
  File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 179, in user_main
    errcode = main(args)
  File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 64, in main
    return _main(base, args, cli_class, option_parser_class)
  File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 99, in _main
    return cli_run(cli, base)
  File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 123, in cli_run
    ret = resolving(cli, base)
  File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 154, in resolving
    base.do_transaction(display=displays)
  File "/usr/lib/python3.6/site-packages/dnf/cli/cli.py", line 235, in do_transaction
    tid = super(BaseCli, self).do_transaction(display)
  File "/usr/lib/python3.6/site-packages/dnf/base.py", line 893, in do_transaction
    tid = self._run_transaction(cb=cb)
  File "/usr/lib/python3.6/site-packages/dnf/base.py", line 1043, in _run_transaction
    self._verify_transaction(cb.verify_tsi_package)
  File "/usr/lib/python3.6/site-packages/dnf/base.py", line 1081, in _verify_transaction
    self.history.end(rpmdbv, 0)
  File "/usr/lib/python3.6/site-packages/dnf/db/history.py", line 490, in end
    bool(return_code)
  File "/usr/lib64/python3.6/site-packages/libdnf/transaction.py", line 742, in endTransaction
    return _transaction.Swdb_endTransaction(self, dtEnd, rpmdbVersionEnd, state)
RuntimeError: C++ std::exception: TransactionItem state is not set: vulkan-1.1.70.0-1.fc27.x86_64

Version-Release number of selected component (if applicable):
upstream

Actual results:
Does a traceback.

Expected results:
Sucessfuly ends without traceback

Additional info:
cat /var/log/dnf.log | grep 'vulkan'
2018-08-27T07:02:37Z DEBUG ---> Balíček mesa-vulkan-drivers.i686 17.3.9-1.fc27 bude nainstalován
2018-08-27T07:02:37Z DEBUG ---> Balíček vulkan-loader.i686 1.1.77.0-4.fc27 bude nainstalován
2018-08-27T07:02:37Z DEBUG ---> Balíček vulkan.x86_64 1.1.70.0-1.fc27 bude zastarán
2018-08-27T07:02:37Z DEBUG ---> Balíček vulkan.i686 1.1.70.0-1.fc27 bude zastarán
2018-08-27T07:02:37Z DEBUG ---> Balíček vulkan-filesystem.noarch 1.1.70.0-1.fc27 bude zastarán
2018-08-27T07:02:37Z DEBUG ---> Balíček vulkan-loader.x86_64 1.1.77.0-4.fc27 bude nainstalován
2018-08-27T07:02:37Z DEBUG ---> Balíček vulkan.x86_64 1.1.70.0-1.fc27 bude zastarán
2018-08-27T07:02:37Z DEBUG ---> Balíček vulkan.i686 1.1.70.0-1.fc27 bude zastarán
2018-08-27T07:02:37Z DEBUG ---> Balíček vulkan-filesystem.noarch 1.1.70.0-1.fc27 bude zastarán
2018-08-27T07:02:38Z DEBUG ---> Balíček mesa-vulkan-drivers.x86_64 17.3.6-1.fc27 bude aktualizován
2018-08-27T07:02:38Z DEBUG ---> Balíček mesa-vulkan-drivers.x86_64 17.3.9-1.fc27 bude aktualizací
 mesa-vulkan-drivers                         x86_64   17.3.9-1.fc27                             updates                             1.6 M
 mesa-vulkan-drivers                         i686     17.3.9-1.fc27                             updates                             1.8 M
 vulkan-loader                               i686     1.1.77.0-4.fc27                           updates                             111 k
     nahrazování  vulkan.i686 1.1.70.0-1.fc27
     nahrazování  vulkan.x86_64 1.1.70.0-1.fc27
     nahrazování  vulkan-filesystem.noarch 1.1.70.0-1.fc27
 vulkan-loader                               x86_64   1.1.77.0-4.fc27                           updates                             104 k
     nahrazování  vulkan.i686 1.1.70.0-1.fc27
     nahrazování  vulkan.x86_64 1.1.70.0-1.fc27
     nahrazování  vulkan-filesystem.noarch 1.1.70.0-1.fc27
2018-08-27T07:05:29Z DDEBUG /var/cache/dnf/updates-09879b494aeba108/packages/vulkan-loader-1.1.77.0-4.fc27.i686.rpm odstraněn
2018-08-27T07:05:29Z DDEBUG /var/cache/dnf/updates-09879b494aeba108/packages/mesa-vulkan-drivers-17.3.9-1.fc27.i686.rpm odstraněn
2018-08-27T07:05:29Z DDEBUG /var/cache/dnf/updates-09879b494aeba108/packages/vulkan-loader-1.1.77.0-4.fc27.x86_64.rpm odstraněn
2018-08-27T07:06:11Z DEBUG ---> Balíček mesa-vulkan-drivers.i686 17.3.9-1.fc27 bude nainstalován
2018-08-27T07:06:11Z DEBUG ---> Balíček vulkan-loader.i686 1.1.77.0-4.fc27 bude nainstalován
2018-08-27T07:06:11Z DEBUG ---> Balíček vulkan.x86_64 1.1.70.0-1.fc27 bude zastarán
2018-08-27T07:06:11Z DEBUG ---> Balíček vulkan.i686 1.1.70.0-1.fc27 bude zastarán
2018-08-27T07:06:11Z DEBUG ---> Balíček vulkan-filesystem.noarch 1.1.70.0-1.fc27 bude zastarán
2018-08-27T07:06:11Z DEBUG ---> Balíček vulkan-loader.x86_64 1.1.77.0-4.fc27 bude nainstalován
2018-08-27T07:06:11Z DEBUG ---> Balíček vulkan.x86_64 1.1.70.0-1.fc27 bude zastarán
2018-08-27T07:06:11Z DEBUG ---> Balíček vulkan.i686 1.1.70.0-1.fc27 bude zastarán
2018-08-27T07:06:11Z DEBUG ---> Balíček vulkan-filesystem.noarch 1.1.70.0-1.fc27 bude zastarán
2018-08-27T07:06:12Z DEBUG ---> Balíček mesa-vulkan-drivers.x86_64 17.3.6-1.fc27 bude aktualizován
2018-08-27T07:06:12Z DEBUG ---> Balíček mesa-vulkan-drivers.x86_64 17.3.9-1.fc27 bude aktualizací
 mesa-vulkan-drivers                         x86_64   17.3.9-1.fc27                             updates                             1.6 M
 mesa-vulkan-drivers                         i686     17.3.9-1.fc27                             updates                             1.8 M
 vulkan-loader                               i686     1.1.77.0-4.fc27                           updates                             111 k
     nahrazování  vulkan.i686 1.1.70.0-1.fc27
     nahrazování  vulkan.x86_64 1.1.70.0-1.fc27
     nahrazování  vulkan-filesystem.noarch 1.1.70.0-1.fc27
 vulkan-loader                               x86_64   1.1.77.0-4.fc27                           updates                             104 k
     nahrazování  vulkan.i686 1.1.70.0-1.fc27
     nahrazování  vulkan.x86_64 1.1.70.0-1.fc27
     nahrazování  vulkan-filesystem.noarch 1.1.70.0-1.fc27

Comment 1 Daniel Mach 2018-08-29 10:19:18 UTC
Reproducer:
dnf --installroot=/tmp/vulkan --releasever=27 --nogpgcheck --repoid=fedora --repoid=updates install vulkan-1.1.73.0-1.fc27.i686 vulkan-1.1.73.0-1.fc27.x86_64 vulkan-filesystem-1.1.73.0-1.fc27 
dnf --installroot=/tmp/vulkan --releasever=27 --nogpgcheck --repoid=fedora --repoid=updates update

Comment 3 Daniel Mach 2018-08-31 11:02:06 UTC
This will require additional changes.
When the package is added to the transaction multiple times,
it should be added only once to the database with the best reason value.

Comment 4 Adam Williamson 2018-09-15 01:49:16 UTC
I believe the commit mentioned here was merged before 0.19.1, so will mark https://bodhi.fedoraproject.org/updates/FEDORA-2018-f16a71bc92 as fixing this. However, I got a similar error with libdnf 0.19.1: https://bugzilla.redhat.com/show_bug.cgi?id=1629340

Comment 5 Fedora Update System 2018-09-15 01:50:24 UTC
anaconda-29.24.3-1.fc29 dnf-3.5.1-1.fc29 dnf-plugins-core-3.0.3-1.fc29 libdnf-0.19.1-2.fc29 lorax-29.12-2.fc29 has been submitted as an update to Fedora 29. https://bodhi.fedoraproject.org/updates/FEDORA-2018-f16a71bc92

Comment 6 Fedora Update System 2018-09-18 17:10:06 UTC
anaconda-29.24.3-1.fc29 dnf-3.5.1-1.fc29 dnf-plugins-core-3.0.3-1.fc29 libdnf-0.19.1-2.fc29 lorax-29.12-2.fc29 python-blivet-3.1.0-2.fc29 has been submitted as an update to Fedora 29. https://bodhi.fedoraproject.org/updates/FEDORA-2018-f16a71bc92

Comment 7 Fedora Update System 2018-09-20 16:16:20 UTC
anaconda-29.24.3-1.fc29, dnf-3.5.1-1.fc29, dnf-plugins-core-3.0.3-1.fc29, libdnf-0.19.1-3.fc29, lorax-29.12-2.fc29, python-blivet-3.1.0-2.fc29 has been pushed to the Fedora 29 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-f16a71bc92

Comment 8 Fedora Update System 2018-09-20 22:35:36 UTC
anaconda-29.24.3-1.fc29, dnf-3.5.1-1.fc29, dnf-plugins-core-3.0.3-1.fc29, libdnf-0.19.1-3.fc29, lorax-29.12-2.fc29, python-blivet-3.1.0-2.fc29 has been pushed to the Fedora 29 stable repository. If problems still persist, please make note of it in this bug report.


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