Bug 147377 - Update unexpectedly removes other RPMs
Update unexpectedly removes other RPMs
Product: Red Hat Enterprise Linux 3
Classification: Red Hat
Component: rpm (Show other bugs)
i586 Linux
medium Severity medium
: ---
: ---
Assigned To: Jeff Johnson
Mike McLean
Depends On:
  Show dependency treegraph
Reported: 2005-02-07 13:43 EST by Dermot McCluskey
Modified: 2007-11-30 17:07 EST (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2005-02-07 15:29:28 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Dermot McCluskey 2005-02-07 13:43:56 EST
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4.1)

Description of problem:
I have 2 RPMs as follows:
- 1st RPM, foo, Provides: bar (amongst other things)
- 2nd RPM is called bar (and so automatically provides bar)

If I do:
# rpm -U foo.rpm
# rpm -U bar.rpm
the second command causes foo to be erased.
Is this the correct behavior?

Note, if I update them in the reverse order, or if I update
them both on the same command line, or if I install with "-i"
instead of updating, foo does not get erased - both RPMs will
be successfully installed.  Therefore, I'm inclined to think
this is a bug?

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

How reproducible:

Steps to Reproduce:
1. Create a simple RPM, foo, which "Provides: bar"
2. Create a simple RPM, bar
3. rpm -U foo.rpm
4. rpm -q foo    # Result: foo is installed
4. rpm -U bar.rpm
5. rpm -q foo

Actual Results:  Result: foo has been erased.

Expected Results:  Expected: both foo and bar should be installed.
# rpm -q --whatprovides foo
should show both RPMs provinding the "bar" capability

Additional info:
Comment 1 Jeff Johnson 2005-02-07 15:29:28 EST
No bug here.

--install has implicit promise to never erase any package,
so even Obsoletes: are ignored during install.

--upgrade is by Provides: name, not package Name:,
although each package Name: has a Provide: silently added.

So this is the expected behavior.

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