Bug 234562

Summary: Crash attempting to download: No more mirrors to try
Product: [Fedora] Fedora Reporter: Eric Lambart <redhat>
Component: pirutAssignee: Jeremy Katz <katzj>
Status: CLOSED NEXTRELEASE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 6CC: narsumit
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-04-02 14:59:57 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 Lambart 2007-03-30 05:19:42 UTC
Description of problem:
Crash while trying to download the eclipse rpm mentioned in the crash dump below.

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

How reproducible:
Don't know.

Steps to Reproduce:
Filing initial stack trace.  Haven't tried to reproduce.

1. Started Pirut.  I haven't used Pirut much but wanted to install Eclipse
(1:3.2.1-4.fc6, from core) to work on a Java project.
  
Actual results:
It failed to download.

Incidentally...(?) just a minute before, I tried to download eclipse-jdt.i386
1:3.2.2-1.fc6 (from updates), which Pirut also lists as available. That failed
because it couldn't find a mirror.

I tried downloading with "yum install eclipse-jdt.i386" and all mirrors failed
with 404s, "Resource temporarily unavailable", "Network is unreachable", and
other errors.  So this may just be a case of Pirut not handling yum's failure
condition gracefully.

Expected results:
Install the RPM please.

Additional info:

GNOME crash report/stack trace:
------------------------------------------

Component: Software Manager
Summary: TBccefa5c9 yumRepo.py:426:__get:RepoError: failure:
dvd/Fedora/RPMS/eclipse-jdt-3.2.1-4.fc6.i386.rpm from core: [Errno 256] No more
mirrors to try.

Traceback (most recent call last):
  File "/usr/sbin/pirut", line 334, in _apply
    self.applyChanges(self.mainwin)
  File "/usr/lib/python2.4/site-packages/pirut/__init__.py", line 559, in
applyChanges
    self.checkDeps(mainwin)
  File "/usr/lib/python2.4/site-packages/pirut/__init__.py", line 324, in checkDeps
    self.populateTs(keepold=0)
  File "/usr/lib/python2.4/site-packages/yum/depsolve.py", line 150, in populateTs
    self.downloadHeader(txmbr.po)
  File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 760, in
downloadHeader
    cache=repo.http_caching != 'none',
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 454, in getHeader
    cache=cache,
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 426, in __get
    raise Errors.RepoError, "failure: %s from %s: %s" % (relative, self.id, e)
RepoError: failure: dvd/Fedora/RPMS/eclipse-jdt-3.2.1-4.fc6.i386.rpm from core:
[Errno 256] No more mirrors to try.

Local variables in innermost frame:
e: [Errno 256] No more mirrors to try.
start: 440
url: None
text: None
self: core
cache: True
reget: None
relative: dvd/Fedora/RPMS/eclipse-jdt-3.2.1-4.fc6.i386.rpm
headers: ()
checkfunc: (<bound method PackageManager.verifyHeader of
<__main__.PackageManager object at 0x8953cac>>,
(<yum.sqlitesack.YumAvailablePackageSqlite object at 0xca7c22c>, 1), {})
copy_local: 1
end: 46840
local: //var/cache/yum/core/headers/eclipse-jdt-3.2.1-4.fc6.i386.hdr

Comment 1 Jeremy Katz 2007-04-02 14:59:57 UTC
This should be handled better with F7

Comment 2 Sumit Narayan 2007-05-15 15:29:26 UTC
The same happens with Software Updated too. This is what I got while doing
regular software updates.

Crash Report:
=============

Component: Software Updater
Summary: TBccefa5c9 yumRepo.py:426:__get:RepoError: failure:
fuse-libs-2.6.5-1.fc6.i386.rpm from extras: [Errno 256] No more mirrors to try.

Traceback (most recent call last):
  File "/usr/sbin/pup", line 433, in _apply
    self.applyChanges(self.mainwin)
  File "/usr/lib/python2.4/site-packages/pirut/__init__.py", line 559, in
applyChanges
    self.checkDeps(mainwin)
  File "/usr/lib/python2.4/site-packages/pirut/__init__.py", line 324, in checkDeps
    self.populateTs(keepold=0)
  File "/usr/lib/python2.4/site-packages/yum/depsolve.py", line 150, in populateTs
    self.downloadHeader(txmbr.po)
  File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 767, in
downloadHeader
    cache=repo.http_caching != 'none',
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 454, in getHeader
    cache=cache,
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 426, in __get
    raise Errors.RepoError, "failure: %s from %s: %s" % (relative, self.id, e)
RepoError: failure: fuse-libs-2.6.5-1.fc6.i386.rpm from extras: [Errno 256] No
more mirrors to try.

Local variables in innermost frame:
e: [Errno 256] No more mirrors to try.
start: 440
url: None
text: None
self: extras
cache: True
reget: None
relative: fuse-libs-2.6.5-1.fc6.i386.rpm
headers: ()
checkfunc: (<bound method PackageUpdater.verifyHeader of
<__main__.PackageUpdater object at 0xa21598c>>,
(<yum.sqlitesack.YumAvailablePackageSqlite object at 0xb6bf38c>, 1), {})
copy_local: 1
end: 5490
local: //var/cache/yum/extras/headers/fuse-libs-2.6.5-1.fc6.i386.hdr