Description of problem: primary.xml.gz 100% |=========================| 724 kB 00:09 Traceback (most recent call last): File "/usr/bin/yum", line 29, in ? yummain.main(sys.argv[1:]) File "/usr/share/yum-cli/yummain.py", line 92, in main result, resultmsgs = do() File "/usr/share/yum-cli/cli.py", line 472, in doCommands return self.updatePkgs() File "/usr/share/yum-cli/cli.py", line 948, in updatePkgs self.doRepoSetup() File "/usr/share/yum-cli/cli.py", line 76, in doRepoSetup self.doSackSetup(thisrepo=thisrepo) File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 260, in doSackSetup self.repos.populateSack(which=repos) File "/usr/lib/python2.4/site-packages/yum/repos.py", line 285, in populateSack xml = repo.getPrimaryXML() File "/usr/lib/python2.4/site-packages/yum/repos.py", line 794, in getPrimaryXML return self._retrieveMD('primary') File "/usr/lib/python2.4/site-packages/yum/repos.py", line 781, in _retrieveMD cache=self.http_caching == 'all') File "/usr/lib/python2.4/site-packages/yum/repos.py", line 624, 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 Version-Release number of selected component (if applicable): 2.4.1-1 How reproducible: Just ran "yum update" Steps to Reproduce: 1. 2. 3. Actual results: Expected results: No traceback. Perhaps a meaninfgul error message. Additional info:
This is a bug, and probably one in urlgrabber rather than yum. However, I don't have enough information here to diagnose it. I'd really like to know the following: a) which failover method in yum were you using b) how did the download go as far as passing through mirrors? Did this happen after the last mirror? Had other mirrors failed in previous downloads? It would be very helpful if you could recreate this with urlgrabber debugging on. Assuming you have urlgrabber 2.9.6 or older, you can just edit mirror.py and set DEBUG to 1. If you have 2.9.7 (which I doubt, but you can always get it from here http://www.linux.duke.edu/projects/urlgrabber/download/urlgrabber-2.9.7.tar.gz) then you can just set the environment variable URLGRABBER_DEBUG=1,/tmp/ug.txt before you run yum. Note, you don't have to globally install the new urlgrabber. You can just set PYTHON_PATH=/where/urlgrabber/is before running yum.
I have installed 2.9.7 in /usr/local and added /etc/profile.d/debug.sh to set PYTHONPATH and URLGRABBER_DEBUG. Will wait and see if this happens again ...
Should be happier now