[Yum] yum 3.2.4
Fajar A. Nugraha
fajar at fajar.net
Wed Aug 29 09:50:28 UTC 2007
Fajar A. Nugraha wrote:
> With that bug out of the way as well, I'm back to the first bug I
> submitted with yum 3.2.3:
> File "/usr/lib/python2.5/site-packages/yum/rpmtrans.py", line 164, in
> ts_done
> (t,e,n,v,r,a) = self._te_tuples[0] # what we should be on
> IndexError: list index out of range
>
>
OK, so now I can reliably reproduce this bug, using --installroot to
make it easier to reproduce.
Using these commands :
# yum --installroot=/data2/tmp/root --disablerepo=updates install gaim
# mkdir -p /data2/tmp/root.orig/var/lib/yum
# yum --installroot=/data2/tmp/root update
I insert this line on yum/rpmtrans.py, line 311, to help debugging
print len(self._te_tuples)
just before
self.ts_done(txmbr.po, txmbr.output_state)
Last few lines of output :
Installing: NetworkManager ####################### [44/62]
19
Installing: NetworkManager-glib ####################### [45/62]
18
Installing: libpurple ####################### [46/62]
17
Cleanup : resmgr ####################### [47/62]
Cleanup : krb5 ####################### [48/62]
Cleanup : hal ####################### [49/62]
Cleanup : pm-utils ####################### [50/62]
Erasing : gaim ####################### [51/62]
Cleanup : aaa_base ####################### [52/62]
Cleanup : evolution-data-server ####################### [53/62]
Cleanup : libsmbclient ####################### [54/62]
Cleanup : openssl ####################### [55/62]
Cleanup : libsoup ####################### [56/62]
Cleanup : freetype2 ####################### [57/62]
Cleanup : sysvinit ####################### [58/62]
Cleanup : pam ####################### [59/62]
Cleanup : audit-libs ####################### [60/62]
Cleanup : gtk2 ####################### [61/62]
Cleanup : libpng ####################### [62/62]
0
Traceback (most recent call last):
File "/usr/bin/yum", line 29, in <module>
yummain.main(sys.argv[1:])
File "/usr/share/yum-cli/yummain.py", line 180, in main
base.doTransaction()
File "/usr/share/yum-cli/cli.py", line 382, in doTransaction
self.runTransaction(cb=cb)
File "/usr/lib/python2.5/site-packages/yum/__init__.py", line 579, in
runTransaction
errors = self.ts.run(cb.callback, '')
File "/usr/lib/python2.5/site-packages/yum/rpmtrans.py", line 249, in
callback
self._instCloseFile( bytes, total, h )
File "/usr/lib/python2.5/site-packages/yum/rpmtrans.py", line 312, in
_instCloseFile
self.ts_done(txmbr.po, txmbr.output_state)
File "/usr/lib/python2.5/site-packages/yum/rpmtrans.py", line 164, in
ts_done
(t,e,n,v,r,a) = self._te_tuples[0] # what we should be on
IndexError: list index out of range
There seems to be a problem during Erase or Cleanup because
len(self._te_tuples) on the last line should be 1, not 0.
Attached is a patch which simply skips self.ts_done when
len(self._te_tuples) < 1. This doesn't solve the root cause, but at
least it allows yum to exit cleanly :)
Regards,
Fajar
More information about the Yum
mailing list