Output of an emerge pambase, followed by a --fetchonly, follows. The file verify is obviously failing due to filesize (that'll be a separate bug), but it shouldn't be causing a traceback. This is a narrowed-down case from an emerge -avNuD system where the traceback caused it to abort even tho I have EMERGE_DEFAULT_OPTS=--keep-going set. ~amd64, here's a listing of apropos packages (let me know if you need a full emerge --info, but I doubt you do for this): $emerge -p bash python portage gcc glibc These are the packages that would be merged, in order: Calculating dependencies ... done! [ebuild R ] sys-apps/portage-2.2_rc5 [ebuild R ] app-shells/bash-3.2_p39 [ebuild R ] dev-lang/python-2.5.2-r5 [ebuild R ] sys-devel/gcc-4.3.1-r1 [ebuild R ] sys-libs/glibc-2.8_p20080602 $sudo emerge -av1 pambase These are the packages that would be merged, in order: Calculating dependencies ... done! [ebuild U ] sys-auth/pambase-20080730 [20080723.1] USE="cracklib -consolekit -debug -gnome-keyring -mktemp -passwdqc (-selinux) -ssh" 3 kB Total: 1 package (1 upgrade), Size of downloads: 3 kB Would you like to merge these packages? [Yes/No] >>> Verifying ebuild manifests >>> Building (1 of 1) sys-auth/pambase-20080730 >>> Jobs: 0 of 1 complete, 1 failed Load avg: 0.12, 0.19, 0.21 Traceback (most recent call last): File "/usr/bin/emerge", line 18, in <module> retval = _emerge.emerge_main() File "/usr/lib64/portage/pym/_emerge/__init__.py", line 13580, in emerge_main myopts, myaction, myfiles, spinner) File "/usr/lib64/portage/pym/_emerge/__init__.py", line 12756, in action_build retval = mergetask.merge() File "/usr/lib64/portage/pym/_emerge/__init__.py", line 9339, in merge rval = self._merge() File "/usr/lib64/portage/pym/_emerge/__init__.py", line 9548, in _merge self._main_loop() File "/usr/lib64/portage/pym/_emerge/__init__.py", line 9661, in _main_loop self._poll_loop() File "/usr/lib64/portage/pym/_emerge/__init__.py", line 8340, in _poll_loop handler(f, event) File "/usr/lib64/portage/pym/_emerge/__init__.py", line 2162, in _output_handler self.wait() File "/usr/lib64/portage/pym/_emerge/__init__.py", line 1627, in wait self._wait_hook() File "/usr/lib64/portage/pym/_emerge/__init__.py", line 1688, in _wait_hook f(self) File "/usr/lib64/portage/pym/_emerge/__init__.py", line 8177, in _task_exit self.running_tasks.remove(task) KeyError: <_emerge.EbuildFetcher object at 0x42428c0> $sudo emerge --fetchonly pambase Calculating dependencies ... done! >>> Fetching (1 of 1) sys-auth/pambase-20080730 >>> Downloading 'http://open-systems.ufl.edu/mirrors/gentoo/distfiles/pambase-20080730.tar.bz2' --2008-07-31 01:32:10-- http://open-systems.ufl.edu/mirrors/gentoo/distfiles/pambase-20080730.tar.bz2 Resolving open-systems.ufl.edu... 128.227.74.67 Connecting to open-systems.ufl.edu|128.227.74.67|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 2458 (2.4K) [application/x-tar] Saving to: `/str/portage/src/pambase-20080730.tar.bz2' 100%[===========================================================================================>] 2,458 --.-K/s in 0s 2008-07-31 01:32:10 (8.77 MB/s) - `/str/portage/src/pambase-20080730.tar.bz2' saved [2458/2458] ('Filesize does not match recorded size', 2458, 2460) !!! Fetched file: pambase-20080730.tar.bz2 VERIFY FAILED! !!! Reason: Filesize does not match recorded size !!! Got: 2458 !!! Expected: 2460 Refetching... File renamed to '/str/portage/src/pambase-20080730.tar.bz2._checksum_failure_.AK9eZJ' >>> Downloading 'http://gentoo.mirrors.easynews.com/linux/gentoo/distfiles/pambase-20080730.tar.bz2' --2008-07-31 01:32:10-- http://gentoo.mirrors.easynews.com/linux/gentoo/distfiles/pambase-20080730.tar.bz2 Resolving gentoo.mirrors.easynews.com... 69.16.168.244 Connecting to gentoo.mirrors.easynews.com|69.16.168.244|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 2458 (2.4K) [application/x-tar] Saving to: `/str/portage/src/pambase-20080730.tar.bz2' 100%[===========================================================================================>] 2,458 --.-K/s in 0s 2008-07-31 01:32:10 (8.55 MB/s) - `/str/portage/src/pambase-20080730.tar.bz2' saved [2458/2458] ('Filesize does not match recorded size', 2458, 2460) !!! Fetched file: pambase-20080730.tar.bz2 VERIFY FAILED! !!! Reason: Filesize does not match recorded size !!! Got: 2458 !!! Expected: 2460 Refetching... File renamed to '/str/portage/src/pambase-20080730.tar.bz2._checksum_failure_.AK9eZJ' [snipped repeated tries from other mirrors with the same result]
Created attachment 161827 [details, diff] fix bug in exit listener logic If this is saved as /tmp/remove_exit_listener.patch then it can be applied as follows: patch /usr/lib/portage/pym/_emerge/__init__.py /tmp/remove_exit_listener.patch
This is fixed in 2.2_rc6.