Bug 784289 - Transaction order not guaranteed when using Conflicts:
Summary: Transaction order not guaranteed when using Conflicts:
Keywords:
Status: CLOSED DUPLICATE of bug 760793
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: rpm
Version: 6.2
Hardware: All
OS: Linux
unspecified
high
Target Milestone: rc
: ---
Assignee: Panu Matilainen
QA Contact: BaseOS QE Security Team
URL:
Whiteboard:
Depends On:
Blocks: 784275
TreeView+ depends on / blocked
 
Reported: 2012-01-24 13:37 UTC by Stephen Gallagher
Modified: 2014-01-21 06:24 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2012-02-14 05:43:24 UTC
Target Upstream Version:


Attachments (Terms of Use)

Description Stephen Gallagher 2012-01-24 13:37:18 UTC
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

Comment 2 James Antill 2012-02-13 17:01:39 UTC
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?

Comment 3 Stephen Gallagher 2012-02-13 18:51:57 UTC
I can guarantee you that selinux-policy does not depend on SSSD, so there are no loops.

Comment 4 Panu Matilainen 2012-02-14 05:43:24 UTC

*** This bug has been marked as a duplicate of bug 760793 ***


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