Bug 113482

Summary: up2date fails if obsSense is a list (rpm 4.3 python api changes?)
Product: [Retired] Red Hat Raw Hide Reporter: Paul Nasrat <nobody+pnasrat>
Component: up2dateAssignee: Adrian Likins <alikins>
Status: CLOSED CURRENTRELEASE QA Contact: Fanny Augustin <fmoquete>
Severity: medium Docs Contact:
Priority: medium    
Version: 1.0CC: gafton, mihai.ibanescu
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2004-01-14 16:11:37 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Paul Nasrat 2004-01-14 14:01:59 UTC
Description of problem:

Running up2date 

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

up2date 4.3.1-2
rpm 4.30-0.7

How reproducible:

Always

Steps to Reproduce:
1. upgraded rpm 
2. up2date -l
3.
  
Actual results:

(with extra debug)

obsName: perl-Mail-SpamAssassin obsSense: [0] obsVersion:
obsName: redhat-config-bind obsSense: 0 obsVersion:
obsName: bindconf obsSense: 0 obsVersion:
obsName: redhat-config-boot obsSense: [0] obsVersion:
obsName: ksconfig obsSense: 0 obsVersion:
obsName: redhat-config-kickstart obsSense: 0 obsVersion:
obsName: redhat-config-netboot obsSense: [0] obsVersion:
Traceback (most recent call last):
  File "/usr/sbin/up2date", line 1259, in ?
    sys.exit(main() or 0)
  File "/usr/sbin/up2date", line 795, in main
    fullUpdate, dryRun=options.dry_run))
  File "/usr/sbin/up2date", line 1138, in batchRun
    batch.run()
  File "up2dateBatch.py", line 60, in run
  File "up2dateBatch.py", line 107, in __findPackagesToUpdate
  File "/usr/share/rhn/up2date_client/packageList.py", line 553, in
getPackagesToInstall
    self.__findObsoletingPackages()
  File "/usr/share/rhn/up2date_client/packageList.py", line 433, in
__findObsoletingPackages
    if op & int(obsSense):
TypeError: int() argument must be a string or a number

Expected results:

obsSense should either always be list or an int - it may be an
rpm-python bug if so reassign and I'll look into.

Additional info:

I think this may be an rpm-python bug as you are doing 
obsflags[index] in genObsoleteTupleFromHeader.  I'll try and investigate.

Comment 1 Paul Nasrat 2004-01-14 14:50:35 UTC
Strangely this is working on another box for me (same rpm, python and
up2date only difference is arch=ppc) - this may be a local system issue.

Comment 2 Paul Nasrat 2004-01-14 16:11:37 UTC
have since updated (using yum) and up2date now magically works.  Must
have been something odd in the rawhide state my machine was at.

Closing.