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
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
https://github.com/rpm-software-management/libdnf/pull/560
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.
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
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
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
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
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.