Hide Forgot
Description of problem: When upgrading a package that has an "optional" dependency on another package using the "Conflicts: package < version" directive, yum does not guarantee that that the other package is updated first. This causes issues with packages that are trying to mandate an SELinux update if an SELinux denial would result in the package not starting properly. For example: Upgrading SSSD from RHEL 6.1 to RHEL 6.2 added a dependency on selinux-policy 3.7.19-118 To do this (since it must be possible to run SSSD with no SELinux packages on the system, we added: Conflicts: selinux-policy < 3.7.19-118 When SSSD upgrades, it restarts its daemon (if it's currently running). The new version of this package required the newer selinux policy to grant a new permission to allow it to start up. The end result was that SSSD was not running after an upgrade. Yum should be modified so that conditional Conflicts: are resolved before dependent packages are updated. Version-Release number of selected component (if applicable): https://brewweb.devel.redhat.com/buildinfo?buildID=183779 How reproducible: Inconsistent. Order is not guaranteed Steps to Reproduce: See description
Transaction ordering is part of rpm, and I'm kind of surprised that this doesn't already happen ... are you sure there aren't any loops in the deps?
I can guarantee you that selinux-policy does not depend on SSSD, so there are no loops.
*** This bug has been marked as a duplicate of bug 760793 ***