Bug 155614

Summary: yum should update itself first
Product: [Fedora] Fedora Reporter: Eric Warnke <ewarnke>
Component: yumAssignee: Jeremy Katz <katzj>
Status: CLOSED WONTFIX QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 3CC: katzj
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2005-07-29 20:05:48 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 Eric Warnke 2005-04-21 20:01:50 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.6) Gecko/20050323 Firefox/1.0.2 Fedora/1.0.2-1.3.1

Description of problem:
Manual intervention needed to make yum function properly.  yum install gcc crashes, but yum update yum;yum install gcc works.  Therefore yum needs to check for updates to itself before it does any other processing.

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

How reproducible:
Always

Steps to Reproduce:
1. Install minimal x86_64 system
2. yum install gcc

  

Actual Results:  Yum crashes

---> Package glibc-kernheaders.x86_64 0:2.4-9.1.87 set to be installed
--> Running transaction check
--> Processing Conflict: glibc-common conflicts glibc< 2.3.5
Traceback (most recent call last):
  File "/usr/bin/yum", line 8, in ?
    yummain.main(sys.argv[1:])
  File "/usr/share/yum-cli/yummain.py", line 104, in main
    (result, resultmsgs) = base.buildTransaction()
  File "/usr/lib/python2.3/site-packages/yum/__init__.py", line 174, in buildTransaction
    (rescode, restring) = self.resolveDeps()
  File "/usr/lib/python2.3/site-packages/yum/depsolve.py", line 190, in resolveDeps
    (checkdep, missing, conflict, errormsgs) = self._processConflict(dep)
  File "/usr/lib/python2.3/site-packages/yum/depsolve.py", line 492, in _processConflict
    uplist = self.up.getUpdatesList(name=confname)
UnboundLocalError: local variable 'confname' referenced before assignment

Expected Results:  It should install gcc

Additional info:

Workaround is to yum update yum first.

Comment 1 Seth Vidal 2005-04-23 06:13:42 UTC
I think your workaround IS the fix.

yum should not update itself first if only b/c in certain situations it would
pull in an array of other, unexpected, things for the user.

example:

running yum update gcc
and getting an update of:
yum, python, rpm, rpm-python, python-elementtree and sqlite

wouldn't exactly be very nice for a user just looking for a gcc update.

the nightly yum update that a user can enable updates yum first and then does a
global update. I think that's fair enough.


Comment 2 Eric Warnke 2005-04-25 13:40:47 UTC
So, how about what emerge does, warns the user that yum is out of date and
recommends an update?  Simple, non-confusing and would complete the job.

Is it better for the user to guess why yum fails?

Comment 3 Rahul Sundaram 2005-07-03 20:21:25 UTC
Seth,

ping

Comment 4 Seth Vidal 2005-07-29 17:59:31 UTC
my problem with issuing the warning is that it is confusing to the user too. I'm
not sure there is a good answer to this. I'm just not keen on doing it that way.