Description of problem: If you run out of disk space, preupgrade doesn't tell you that it couldn't finish downloading, and reports success and readiness to upgrade. Version-Release number of selected component (if applicable): preupgrade-1.1.4-1.fc12.noarch How reproducible: everytime Steps to Reproduce: 1. start out with too little disk space - I had 200MB of /boot which was the F12 standard iirc with two kernels installed. 2. run preupgrade from a terminal 3. wait til download 'completes' see below traceback in terminal and window telling you that it's ready to begin upgrading. Traceback follows: [ke4qqq@nalleyx60 upgrade]$ preupgrade /usr/lib/python2.6/site-packages/yum/__init__.py:215: UserWarning: Use .preconf instead of passing args to _getConfig warnings.warn('Use .preconf instead of passing args to _getConfig') Loaded plugins: blacklist, refresh-packagekit, whiteout preupgrade-main (mirrorlist) url: http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-13&arch=$basearch now: http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-13&arch=i386 preupgrade (mirrorlist) url: http://mirrors.fedoraproject.org/mirrorlist?path=pub/fedora/linux/development/13/$basearch/os now: http://mirrors.fedoraproject.org/mirrorlist?path=pub/fedora/linux/development/13/i386/os unknown metadata being downloaded: repomdKI1_4stmp.xml preupgrade-rpmfusion-free-rawhide (mirrorlist) url: http://mirrors.rpmfusion.org/mirrorlist?repo=free-fedora-rawhide&arch=i386 now: http://mirrors.rpmfusion.org/mirrorlist?repo=free-fedora-rawhide&arch=i386 unknown metadata being downloaded: repomdanuxPAtmp.xml preupgrade-rpmfusion-nonfree-rawhide (mirrorlist) url: http://mirrors.rpmfusion.org/mirrorlist?repo=nonfree-fedora-rawhide&arch=i386 now: http://mirrors.rpmfusion.org/mirrorlist?repo=nonfree-fedora-rawhide&arch=i386 unknown metadata being downloaded: repomdqumPbLtmp.xml unknown metadata being downloaded: MEMORY Fetched treeinfo from http://mirrordenver.fdcservers.net/fedora/development/13/i386/os//.treeinfo treeinfo timestamp: Thu Mar 25 13:21:57 2010 unknown metadata being downloaded: MEMORY checksum failure downloading initrd.img unknown metadata being downloaded: MEMORY Fetched treeinfo from http://mirrordenver.fdcservers.net/fedora/development/13/i386/os//.treeinfo treeinfo timestamp: Fri Mar 26 13:23:58 2010 unknown metadata being downloaded: MEMORY unknown metadata being downloaded: MEMORY Traceback (most recent call last): File "/usr/lib/python2.6/site-packages/urlgrabber/grabber.py", line 1089, in _retrieve self.fo.write(buf) IOError: [Errno 28] No space left on device Traceback (most recent call last): File "/usr/lib/python2.6/site-packages/urlgrabber/grabber.py", line 1089, in _retrieve self.fo.write(buf) IOError: [Errno 28] No space left on device Traceback (most recent call last): File "/usr/lib/python2.6/site-packages/urlgrabber/grabber.py", line 1089, in _retrieve self.fo.write(buf) IOError: [Errno 28] No space left on device Traceback (most recent call last): File "/usr/lib/python2.6/site-packages/urlgrabber/grabber.py", line 1089, in _retrieve self.fo.write(buf) IOError: [Errno 28] No space left on device Traceback (most recent call last): File "/usr/lib/python2.6/site-packages/urlgrabber/grabber.py", line 1089, in _retrieve self.fo.write(buf) IOError: [Errno 28] No space left on device Traceback (most recent call last): File "/usr/lib/python2.6/site-packages/urlgrabber/grabber.py", line 1089, in _retrieve self.fo.write(buf) IOError: [Errno 28] No space left on device Traceback (most recent call last): File "/usr/lib/python2.6/site-packages/urlgrabber/grabber.py", line 1089, in _retrieve self.fo.write(buf) IOError: [Errno 28] No space left on device Traceback (most recent call last): File "/usr/lib/python2.6/site-packages/urlgrabber/grabber.py", line 1089, in _retrieve self.fo.write(buf) IOError: [Errno 28] No space left on device Traceback (most recent call last): File "/usr/lib/python2.6/site-packages/urlgrabber/grabber.py", line 1089, in _retrieve self.fo.write(buf) IOError: [Errno 28] No space left on device Traceback (most recent call last): File "/usr/lib/python2.6/site-packages/urlgrabber/grabber.py", line 1089, in _retrieve self.fo.write(buf) IOError: [Errno 28] No space left on device Traceback (most recent call last): File "/usr/share/preupgrade/preupgrade-gtk.py", line 240, in on_assistant_apply self._do_main() File "/usr/share/preupgrade/preupgrade-gtk.py", line 259, in _do_main self.main_preupgrade() File "/usr/share/preupgrade/preupgrade-gtk.py", line 473, in main_preupgrade stage2file = self.pu.retrieve_non_critical_files() File "/usr/lib/python2.6/site-packages/preupgrade/__init__.py", line 560, in retrieve_non_critical_files self._retrieve_file(self.mainimage, targetdir, reserve_space=extra_space) File "/usr/lib/python2.6/site-packages/preupgrade/__init__.py", line 468, in _retrieve_file self.instrepo._getFile(relative=fileinfo, local=local) File "/usr/lib/python2.6/site-packages/yum/yumRepo.py", line 810, in _getFile size=size File "/usr/lib/python2.6/site-packages/urlgrabber/mirror.py", line 408, in urlgrab return self._mirror_try(func, url, kw) File "/usr/lib/python2.6/site-packages/urlgrabber/mirror.py", line 394, in _mirror_try return func_ref( *(fullurl,), **kwargs ) File "/usr/lib/python2.6/site-packages/urlgrabber/grabber.py", line 982, in urlgrab return self._retry(opts, retryfunc, url, filename) File "/usr/lib/python2.6/site-packages/urlgrabber/grabber.py", line 886, in _retry r = apply(func, (opts,) + args, {}) File "/usr/lib/python2.6/site-packages/urlgrabber/grabber.py", line 968, in retryfunc fo = PyCurlFileObject(url, filename, opts) File "/usr/lib/python2.6/site-packages/urlgrabber/grabber.py", line 1063, in __init__ self._do_open() File "/usr/lib/python2.6/site-packages/urlgrabber/grabber.py", line 1342, in _do_open self._do_grab() File "/usr/lib/python2.6/site-packages/urlgrabber/grabber.py", line 1472, in _do_grab self._do_perform() File "/usr/lib/python2.6/site-packages/urlgrabber/grabber.py", line 1267, in _do_perform raise KeyboardInterrupt KeyboardInterrupt
Really two bugs, I guess, each of which are probably dups (sorry, I can't mark dups in this bugzilla): 1) doesn't properly check for free space beforehand (possibly related to bug 543582?) 2) doesn't handle the no space on device error (bug 573451 and bug 576760)
Oops, got that first one wrong: that is bug 543482 not 543582.
This package has changed ownership in the Fedora Package Database. Reassigning to the new owner of this component.
Apparently it's fixed updating pyton-urlgrabber yum update --enablerepo=updates-testing python-urlgrabber
I can confirm this bug in my testing of Fedora 12 to 13 via preupgrade. None of the updated packages are downloaded, /boot is full (checked with df), and user is prompted to reboot.
This is also problematic, since the user is no longer able to download the installer images during the upgrade process (as has been the case in the past). This is no longer an option due to this bug.
(In reply to comment #5) > I can confirm this bug in my testing of Fedora 12 to 13 via preupgrade. None > of the updated packages are downloaded, /boot is full (checked with df), and > user is prompted to reboot. Did you get the version of python-urlgrabber in updates-testing as described in comment #4?
Also you may need preupgrade-1.1.5-1.fc12.noarch also in updates-testing.
(In reply to comment #8) > Also you may need preupgrade-1.1.5-1.fc12.noarch also in updates-testing. Actually I think it's been pushed to stable.
I did not, but I will try another test run with the new python-urlgrabber and reply back.
This bug is fixed with the new python-urlgrabber. I intentionally left about 50MB of free space on /boot this time just to make sure it would fill up with downloading the images. It prompted me to quit or continue. Selecting continue, preupgrade begins downloading the packages instead of immediately telling the user to reboot.
(In reply to comment #11) > This bug is fixed with the new python-urlgrabber. Excellent, you might want to add your karma +1 to the update: http://admin.fedoraproject.org/updates/python-urlgrabber-3.9.1-4.1.fc12 Ideally that update would have had this bug attached, so it would close it automatically when it is pushed to stable. > I intentionally left about 50MB of free space on /boot this time just to make > sure it would fill up with downloading the images. It prompted me to quit or > continue. Selecting continue, preupgrade begins downloading the packages > instead of immediately telling the user to reboot.
I can confirm it fixes it here as well (but I don't have a fedora username so can't add karma to the package.)
I've reported on bodhi it worked for me too so now it has 4 karma points instead of only 3. This update should really be pushed to stable because without it the user is not warned about the /boot space problem and preupgrade fails too to plan to plan downloading stage2 only at the next reboot.
This message is a reminder that Fedora 12 is nearing its end of life. Approximately 30 (thirty) days from now Fedora will stop maintaining and issuing updates for Fedora 12. It is Fedora's policy to close all bug reports from releases that are no longer maintained. At that time this bug will be closed as WONTFIX if it remains open with a Fedora 'version' of '12'. Package Maintainer: If you wish for this bug to remain open because you plan to fix it in a currently maintained version, simply change the 'version' to a later Fedora version prior to Fedora 12's end of life. Bug Reporter: Thank you for reporting this issue and we are sorry that we may not be able to fix it before Fedora 12 is end of life. If you would still like to see this bug fixed and are able to reproduce it against a later version of Fedora please change the 'version' of this bug to the applicable version. If you are unable to change the version, please add a comment here and someone will do it for you. Although we aim to fix as many bugs as possible during every release's lifetime, sometimes those efforts are overtaken by events. Often a more recent Fedora release includes newer upstream software that fixes bugs or makes them obsolete. The process we are following is described here: http://fedoraproject.org/wiki/BugZappers/HouseKeeping
Fedora 12 changed to end-of-life (EOL) status on 2010-12-02. Fedora 12 is no longer maintained, which means that it will not receive any further security or bug fix updates. As a result we are closing this bug. If you can reproduce this bug against a currently maintained version of Fedora please feel free to reopen this bug against that version. Thank you for reporting this bug and we are sorry it could not be fixed.