Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 456008 - sys-apps/portage-2.1.11.31: PORTAGE_TMPDIR busy after IOError: [Errno 28] No space left on device
Summary: sys-apps/portage-2.1.11.31: PORTAGE_TMPDIR busy after IOError: [Errno 28] No ...
Status: CONFIRMED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core (show other bugs)
Hardware: AMD64 Linux
: Normal normal (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords:
Depends on: 451158
Blocks:
  Show dependency tree
 
Reported: 2013-02-07 12:48 UTC by Alexandr Tiurin
Modified: 2013-02-07 14:22 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alexandr Tiurin 2013-02-07 12:48:30 UTC
PORTAGE_TMPDIR busy after IOError: [Errno 28] No space left on device

Reproducible: Always

Steps to Reproduce:
1. Size of PORTAGE_TMPDIR = 4GB 
2. emerge \=mail-client/thunderbird-17.0.2
Actual Results:  
These are the packages that would be merged, in reverse order:

Calculating dependencies... done!
[ebuild     U  ] mail-client/thunderbird-17.0.2 [10.0.11] USE="alsa bindist* crypt custom-optimization* dbus ipc jit%* libnotify lightning minimal startup-notification -custom-cflags -debug -gconf -ldap% -mozdom (-selinux) -system-sqlite -wifi (-webm%*)" LINGUAS="ru -ar -ast -be -bg -bn_BD -br -ca -cs -da -de -el -en_GB -es_AR -es_ES -et -eu -fi -fr -fy_NL -ga_IE -gd -gl -he -hr% -hu -hy_AM% -id -is -it -ja -ko -lt -nb_NO -nl -nn_NO -pa_IN -pl -pt_BR -pt_PT -rm -ro -si -sk -sl -sq -sr -sv_SE -ta_LK -tr -uk -vi -zh_CN -zh_TW" 112,330 kB
[ebuild     U  ]  dev-libs/nss-3.14.1 [3.14] USE="-utils" 5,890 kB
[ebuild     U  ]   dev-libs/nspr-4.9.4 [4.9.2] USE="-debug" 1,134 kB

Total: 3 packages (3 upgrades), Size of downloads: 119,353 kB

Would you like to merge these packages? [Yes/No] 
>>> Verifying ebuild manifests
>>> Starting parallel fetch
>>> Emerging (1 of 3) dev-libs/nspr-4.9.4
>>> Installing (1 of 3) dev-libs/nspr-4.9.4
>>> Emerging (2 of 3) dev-libs/nss-3.14.1
>>> Installing (2 of 3) dev-libs/nss-3.14.1
>>> Emerging (3 of 3) mail-client/thunderbird-17.0.2
>>> Jobs: 2 of 3 complete, 1 running                Load avg: 1.99, 3.13, 3.59
Traceback (most recent call last):
  File "/usr/bin/emerge", line 48, in <module>
    retval = emerge_main()
  File "/usr/lib64/portage/pym/_emerge/main.py", line 1021, in emerge_main
    gc_locals=locals().clear)
  File "/usr/lib64/portage/pym/_emerge/actions.py", line 3837, in run_action
    myopts, myaction, myfiles, spinner)
  File "/usr/lib64/portage/pym/_emerge/actions.py", line 463, in action_build
    retval = mergetask.merge()
  File "/usr/lib64/portage/pym/_emerge/Scheduler.py", line 1006, in merge
    rval = self._merge()
  File "/usr/lib64/portage/pym/_emerge/Scheduler.py", line 1390, in _merge
    self._main_loop()
  File "/usr/lib64/portage/pym/_emerge/Scheduler.py", line 1367, in _main_loop
    self._event_loop.iteration()
  File "/usr/lib64/portage/pym/portage/util/_eventloop/EventLoop.py", line 180, in iteration
    if not x.callback(f, event, *x.args):
  File "/usr/lib64/portage/pym/portage/util/_async/PipeLogger.py", line 117, in _output_handler
    log_file.flush()
IOError: [Errno 28] No space left on device

Filesystem                Size  Used Avail Use% Mounted on
/dev/mapper/sdx2-var.tmp  4.0G  4.0G  2.2M 100% /var/tmp


# umount /var/tmp/
umount: /var/tmp: device is busy.
        (In some cases useful info about processes that use
         the device is found by lsof(8) or fuser(1))


# lsof /var/tmp/
COMMAND    PID USER   FD   TYPE DEVICE SIZE/OFF    NODE NAME
python3.2 3838 root  cwd    DIR  253,5       48 1060867 /var/tmp/portage/mail-client/thunderbird-17.0.2/work/comm-esr17/tbird (deleted)
python3.2 3838 root    3u   REG  253,5        0 1090508 /var/tmp/portage/mail-client/thunderbird-17.0.2/.ipc_lock (deleted)
python3.2 3838 root    4r  FIFO  253,5      0t0   21987 /var/tmp/portage/mail-client/thunderbird-17.0.2/.ipc_out (deleted)


# ps ax | grep 3838
 3838 pts/0    S      0:00 /usr/bin/python3.2 /usr/lib64/portage/bin/ebuild-ipc.py exit 1




Expected Results:  
# umount /var/tmp/
#
Comment 1 Zac Medico gentoo-dev 2013-02-07 14:22:40 UTC
If we fix it to handle the IOError and kill the subprocess as discussed in bug #451158, then that should fix it.