Bug 174046 - IndexError while downloading headers
IndexError while downloading headers
Status: CLOSED CURRENTRELEASE
Product: Fedora
Classification: Fedora
Component: yum (Show other bugs)
rawhide
i386 Linux
medium Severity medium
: ---
: ---
Assigned To: Jeremy Katz
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2005-11-23 19:38 EST by Paul Dickson
Modified: 2014-01-21 17:53 EST (History)
1 user (show)

See Also:
Fixed In Version: FC5
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2006-04-19 16:26:18 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:


Attachments (Terms of Use)

  None (edit)
Description Paul Dickson 2005-11-23 19:38:45 EST
Description of problem:
While doing "yum update", I got an IndexError.

On the next run, yum eventually found a mirror with the correct data.

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

How reproducible:
one time

Steps to Reproduce:
1. Likely depends on a incompletely updated mirror
2. yum update
3.
  
Actual results:
---> Downloading header for hwbrowser to pack into transaction set.
http://sunsite.mff.cuni.cz/pub/fedora/development/i386/Fedora/RPMS/hwbrowser-0.24-1.noarch.rpm:
[Errno 4] IOError: HTTP Error 404: Date: Thu, 24 Nov 2005 00:21:39 GMT
Server: Apache/2.0.52 (Fedora)
Content-Length: 350
Connection: close
Content-Type: text/html; charset=iso-8859-1
Trying other mirror.
http://distro.ibiblio.org/pub/linux/distributions/fedora/linux/core/development/i386/Fedora/RPMS/hwbrowser-0.24-1.noarch.rpm:
[Errno 4] IOError: HTTP Error 404: Date: Thu, 24 Nov 2005 00:21:39 GMT
Server: Apache/2.0.46 (Red Hat)
Content-Length: 383
Connection: close
Content-Type: text/html; charset=iso-8859-1
Trying other mirror.
http://ftp.dulug.duke.edu/pub/fedora/linux/core/development/i386/Fedora/RPMS/hwbrowser-0.24-1.noarch.rpm:
[Errno 4] IOError: HTTP Error 404: Content-Length: 345
Date: Thu, 24 Nov 2005 00:21:40 GMT
Accept-Ranges: bytes
Content-Type: text/html
Server: lighttpd/1.3.16
Trying other mirror.
http://mirrors.kernel.org/fedora/core/development/i386/Fedora/RPMS/hwbrowser-0.24-1.noarch.rpm:
[Errno 4] IOError: HTTP Error 404: Date: Thu, 24 Nov 2005 00:21:40 GMT
Server: Apache/2.0.53 (Fedora)
Content-Length: 266
Content-Type: text/html; charset=iso-8859-1
Trying other mirror.
Traceback (most recent call last):
  File "/usr/bin/yum", line 27, in ?
    yummain.main(sys.argv[1:])
  File "/usr/share/yum-cli/yummain.py", line 133, in main
    (result, resultmsgs) = base.buildTransaction()
  File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 339, in
buildTransaction
    (rescode, restring) = self.resolveDeps()
  File "/usr/lib/python2.4/site-packages/yum/depsolve.py", line 212, in resolveDeps
    self.populateTs(test=1)
  File "/usr/lib/python2.4/site-packages/yum/depsolve.py", line 170, in populateTs
    self.downloadHeader(txmbr.po)
  File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 681, in
downloadHeader
    cache=repo.http_caching != 'none',
  File "/usr/lib/python2.4/site-packages/yum/repos.py", line 619, in get
    http_headers=headers,
  File "/usr/lib/python2.4/site-packages/urlgrabber/mirror.py", line 414, in urlgrab
    return self._mirror_try(func, url, kw)
  File "/usr/lib/python2.4/site-packages/urlgrabber/mirror.py", line 392, in
_mirror_try
    mirrorchoice = self._get_mirror(gr)
  File "/usr/lib/python2.4/site-packages/urlgrabber/mirror.py", line 290, in
_get_mirror
    return gr.mirrors[gr._next]
IndexError: list index out of range
[root@violet 17:21:42 ~]#

Expected results:
Header is downloaded and eventually it was.


Additional info:
Comment 1 Paul Dickson 2005-11-25 21:07:02 EST
I hit this IndexError again just a few minutes ago.  It was for package
kernel-2.6.14-1.1709_FC5.i686.rpm.

I now believe the error is because the package no longer exists in the mirrored
repository.

I ran "yum update", but came back 12+ hours later and finally pressed "y".
Comment 2 Paul Dickson 2005-11-25 21:17:12 EST
I just realized my first trace was for downloading headers, not packages.  So
I'm including the stack trace.

I still believe the IndexError is because the file (package or header) no longer
exists.  In my initial report, I may have hit the mirror repository while it was
updating (it this possible?).  I'm updating a slow machine.

Trying other mirror.
http://download.fedora.redhat.com/pub/fedora/linux/core/development/i386/Fedora/RPMS/kernel-2.6.14-1.1709_FC5.i686.rpm:
[Errno 4] IOError: HTTP Error 404: Date: Sat, 26 Nov 2005 01:49:52 GMT
Server: Apache
Last-Modified: Sat, 26 Nov 2005 01:15:24 GMT
Accept-Ranges: bytes
Content-Length: 4438
Content-Type: text/html; charset=UTF-8
Trying other mirror.
http://ftp.dulug.duke.edu/pub/fedora/linux/core/development/i386/Fedora/RPMS/kernel-2.6.14-1.1709_FC5.i686.rpm:
[Errno 4] IOError: HTTP Error 404: Content-Length: 345
Date: Sat, 26 Nov 2005 01:49:53 GMT
Accept-Ranges: bytes
Content-Type: text/html
Server: lighttpd/1.3.16
Trying other mirror.
Traceback (most recent call last):
  File "/usr/bin/yum", line 27, in ?
    yummain.main(sys.argv[1:])
  File "/usr/share/yum-cli/yummain.py", line 170, in main
    base.doTransaction()
  File "/usr/share/yum-cli/cli.py", line 652, in doTransaction
    problems = self.downloadPkgs(downloadpkgs)
  File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 605, in downloadPkgs
    cache=repo.http_caching != 'none',
  File "/usr/lib/python2.4/site-packages/yum/repos.py", line 619, in get
    http_headers=headers,
  File "/usr/lib/python2.4/site-packages/urlgrabber/mirror.py", line 414, in urlgrab
    return self._mirror_try(func, url, kw)
  File "/usr/lib/python2.4/site-packages/urlgrabber/mirror.py", line 392, in
_mirror_try
    mirrorchoice = self._get_mirror(gr)
  File "/usr/lib/python2.4/site-packages/urlgrabber/mirror.py", line 290, in
_get_mirror
    return gr.mirrors[gr._next]
IndexError: list index out of range
You have new mail in /var/spool/mail/root
[root@violet 18:49:54 ~]# laptop_mode sraer
Usage: /usr/local/sbin/laptop_mode {start|stop}
[root@violet 18:51:39 ~]# laptop_mode sraet
Usage: /usr/local/sbin/laptop_mode {start|stop}
[root@violet 18:51:53 ~]# laptop_mode srart
Usage: /usr/local/sbin/laptop_mode {start|stop}
[root@violet 18:52:06 ~]#
Comment 3 Jeremy Katz 2006-04-19 16:26:18 EDT
Should be handled better now

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