Bug 507701 - obsoletes cannot be matched in rpm-python interface
Summary: obsoletes cannot be matched in rpm-python interface
Alias: None
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: rpm
Version: 5.3
Hardware: All
OS: Linux
Target Milestone: rc
: ---
Assignee: Panu Matilainen
QA Contact: BaseOS QE Security Team
Depends On:
TreeView+ depends on / blocked
Reported: 2009-06-23 20:01 UTC by seth vidal
Modified: 2013-07-29 01:57 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
: 507702 (view as bug list)
Last Closed: 2010-03-16 08:34:29 UTC
Target Upstream Version:

Attachments (Terms of Use)

Description seth vidal 2009-06-23 20:01:13 UTC
Description of problem:
Debugging a yum depsolving problem I noticed I wasn't getting results back when I checked to see if an installed package obsoleted a package that was being proposed to be installed.

I started testing various tests and found that nothing is ever returned as matching obsoletes by name or complete. 

Example code:
import rpm
ts = rpm.TransactionSet()
mi = ts.dbMatch(1090, 'mod_gzip')
for hdr in mi:
    print hdr['name']

on the system I have it  should return 'httpd', at the least.

I also tested it using rpm.RPMTAG_OBSOLETES, rpm.RPMTAG_OBSOLETENAME  to no avail.

Finally, I noticed some odd output in rpm -qa --obsoletes for example:

in any case - I'm pretty sure ts.dbMatch() used to work against obsoletes, but it doesn't seem to work anymore.

Comment 1 Panu Matilainen 2010-03-16 08:34:29 UTC
This will work in RHEL 6, but as it involves adding a new index, there's no way to make it reliably available in RHEL 5.

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