Bug 499040 - Anaconda seem to ignore package dependencies such that conflicting packages are not installed together.
Summary: Anaconda seem to ignore package dependencies such that conflicting packages a...
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: anaconda
Version: 5.3
Hardware: All
OS: Linux
medium
medium
Target Milestone: rc
: ---
Assignee: Anaconda Maintenance Team
QA Contact: Release Test Team
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-05-04 22:34 UTC by Srinivas Satyavarpu
Modified: 2018-11-14 17:12 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2010-07-06 16:37:58 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
foo-1 (1.96 KB, application/x-rpm)
2009-05-04 22:35 UTC, Srinivas Satyavarpu
no flags Details
foo-2 (1.96 KB, application/x-rpm)
2009-05-04 22:47 UTC, Srinivas Satyavarpu
no flags Details
bar-1 (1.95 KB, application/x-rpm)
2009-05-04 22:48 UTC, Srinivas Satyavarpu
no flags Details

Description Srinivas Satyavarpu 2009-05-04 22:34:14 UTC
Description of problem:


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


How reproducible:


Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:

The installation software will install packages that state they conflict with each other.  This results in a system in an undefined configuration/state.  This will be extremely hard to detect.  The installer needs to try to resolve package dependencies such that conflicting packages are not installed together.  If the dependencies cannot be resolved in an automated manner, then the install should be aborted.

Comment 1 Srinivas Satyavarpu 2009-05-04 22:35:52 UTC
Created attachment 342392 [details]
foo-1

Comment 2 Srinivas Satyavarpu 2009-05-04 22:37:13 UTC
 Can you provide an example of this as well?  At least in the case where
 two packages provide the same files (a file conflict, as it is called)
 then we definitely display an error message and ask the user to change
 their selections.

 Explicit conflicts also should raise the same error.  Definitely need an
 example here


 Per request.  Can someone take a look at this and see if this makes
 sense?

 Please find attached RPMs and these directions:

 To reproduce this problem:  Build foo2 using the provided srpm.  Put the
 resulting package in a repo that kickstart can use.  Generate a
 kickstart file for a test system that includes the following:

 ---- start of quote ----
text
 cmdline
 %packages --nobase
 @core
 foo2
 ----  end of quote  ----

 The resulting system will incorrectly have both foo2 and sed installed
 regardless that foo2 states that it conflicts with sed.  Again, an
 abort/continue question should be posed.

Comment 3 Srinivas Satyavarpu 2009-05-04 22:47:03 UTC
Created attachment 342393 [details]
foo-2

Comment 4 Srinivas Satyavarpu 2009-05-04 22:48:25 UTC
Created attachment 342394 [details]
bar-1

Comment 5 Chris Lumens 2009-06-05 20:28:43 UTC
In general, anaconda ignores Conflicts: operating on the assumption that a system with most things installed is better than a system with nothing installed, since you can at least repair the former by hand after installation.

In this case, what you've got is a package that conflicts with the base system component sed.  The sed package is going to be required by plenty of other packages and get drawn in regardless.  You then also have foo2 specified in your kickstart file, indicating that should be installed as well.  Since anaconda throws out the Conflicts, you end up with both.

If you really want a package to take the place of sed, you're going to need to Obsolete it.  Note that your obsoleting package had better provide something with equivalent functionality or your system is going to be in a real mess.

Comment 11 Alexander Todorov 2010-02-16 10:24:31 UTC
How about multi-lib packages? They generally conflict with each other and rpm ignores that.

Comment 12 Masahiro Matsuya 2010-04-28 03:40:44 UTC
I guess that rpm ignores it upon some reasonable reasons, though I don't a expert of rpm. If rpm ignores it, it's not needed that anaconda cares for it, I think.

Masahiro

Comment 15 RHEL Program Management 2010-07-02 02:45:13 UTC
Development Management has reviewed and declined this request.  You may appeal
this decision by reopening this request.


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