Reproducer on vanilla system (one kernel-core.x86_64 installed and upgrade available):
Install kernel-core.i686 (requires to add i386 fedora repository)
Error:
Problem: The operation would result in removing the following protected packages: kernel-core
(try to add '--skip-broken' to skip uninstallable packages)
Expected:
Both kernel-core packages will be upgraded
The issue is caused by a different logic in libsolv where packages are handled per architecture (correct behavior) and our logic that handles over limit packages where it handle them per name.
Solution sort same_name_subqueue and related queue by name and architecture.
Installing of secondary architecture for kernel-core result in problem. The issue was discovered during review of https://github.com/rpm-software-management/dnf5/pull/1261.
Reproducer on vanilla system (one kernel-core.x86_64 installed and upgrade available): Install
kernel-core.i686
(requires to add i386 fedora repository)upgrade
kernel-core
(requires to add i386 upgrade repository)Result:
Expected: Both
kernel-core
packages will be upgradedThe issue is caused by a different logic in
libsolv
where packages are handled per architecture (correct behavior) and our logic that handles over limit packages where it handle them per name.Solution sort
same_name_subqueue
and related queue byname
andarchitecture
.