Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 18514 - vim-core emerge failed
Summary: vim-core emerge failed
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Aron Griffis (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-03-31 01:25 UTC by Michael Labhard
Modified: 2003-04-01 01:17 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 Michael Labhard 2003-03-31 01:25:54 UTC
emerge of vim-core results in

 * Applying 6.1.189...                                                     [ ok ]
 * Applying 6.1.190...

 * Failed Patch: 6.1.190!
 *
 * Include in your bugreport the contents of:
 *
 *   /home/no_archive/portage/vim-core-6.1-r5/temp/6.1.190-13948.out


!!! ERROR: app-editors/vim-core-6.1-r5 failed.
!!! Function epatch, Line 321, Exitcode 0
!!! Failed Patch: 6.1.190!


The specified file contains
***** 6.1.190 *****

===================

PATCH COMMAND:  patch  -p0 < /home/no_archive/portage/vim-core-6.1-r5/work/vimpatches/6.1.190

===================
patching file runtime/doc/os_vms.txt
patching file src/gui_gtk_f.h
patching file src/if_tcl.c
patching file src/main.c
patch: **** write error : No space left on device
===================

PATCH COMMAND:  patch  -p1 < /home/no_archive/portage/vim-core-6.1-r5/work/vimpatches/6.1.190

===================
patch: **** write error : No space left on device
cat: write error: Broken pipe
===================

PATCH COMMAND:  patch  -p2 < /home/no_archive/portage/vim-core-6.1-r5/work/vimpatches/6.1.190

===================
patch: **** write error : No space left on device
cat: write error: Broken pipe
===================

PATCH COMMAND:  patch  -p3 < /home/no_archive/portage/vim-core-6.1-r5/work/vimpatches/6.1.190

===================
patch: **** write error : No space left on device
cat: write error: Broken pipe
===================

PATCH COMMAND:  patch  -p4 < /home/no_archive/portage/vim-core-6.1-r5/work/vimpatches/6.1.190

===================
patch: **** write error : No space left on device
cat: write error: Broken pipe


However, df command reveals there is plenty of space

Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sda8               256996    192784     64212  76% /
tmpfs                     2048        12      2036   1% /mnt/.init.d
/dev/sda10            11132668   3491232   7641436  32% /home
/dev/sda9               104380     94336     10044  91% /tmp
/dev/sda5              4096408   2751312   1345096  68% /usr
/dev/sda6              2048188     74352   1973836   4% /var
tmpfs                    63252         0     63252   0% /dev/shm
ce:







Reproducible: Always
Steps to Reproduce:

1.
2.
3.
Comment 1 Aron Griffis (RETIRED) gentoo-dev 2003-03-31 10:44:51 UTC
Hi, the ebuild wasn't lying, you really ran out of disk space temporarily.  In the meantime stuff has been cleaned up and now there is space available.  Due to the number of patches in vim you need about 30 MB free on the drive where /var/tmp/portage is mounted.

There is a new vim.eclass as of this weekend that speeds up the patch application process, by the way.  "emerge sync" to get it and try again.  However if it runs out of space, it's the truth and you'll need to make room.
Comment 2 Aron Griffis (RETIRED) gentoo-dev 2003-03-31 10:50:25 UTC
Sorry, I guess for you that would be /home/no_archive/portage instead of /var/tmp/portage.  Also, patch requires space in /tmp for some of its work (see the patch man-page).  If the problem is there, then you could try:

export TMPDIR=/var/tmp
emerge vim-core
Comment 3 Aron Griffis (RETIRED) gentoo-dev 2003-03-31 10:57:53 UTC
Thinking this over further, I realized it would make more sense for patch to use the temporary space in the build area, rather than depending on /tmp (or the user's setting of TMPDIR).  So I fixed the eclass to set TMPDIR correctly.  It might take about a half-hour to become available on the rsync servers.
Comment 4 Aron Griffis (RETIRED) gentoo-dev 2003-03-31 10:58:25 UTC
Marking FIXED instead of INVALID since hopefully the eclass now works around the problem.
Comment 5 Michael Labhard 2003-04-01 00:53:32 UTC
Seems to me that Gentoo ebuilds are supposed to determine if there is enough disk space available to complete the ebuild before beginning.  I cannot find the bug about this presently, but it sticks in my mind.  Are we there with this ebuild?
Comment 6 Mr. Bones. (RETIRED) gentoo-dev 2003-04-01 01:17:25 UTC
There's no way for emerge to guarantee that the disk won't fill up at 
some point during the ebuild.  You might be able to do something in DOS
or some other inferior OS, but on Unix, any number of things can happen
at any time to fill the disk up.  That's just reality.

If emerge does any kind of disk space checking at the beginning of the
process, that's just a waste of time because it doesn't prove anything.
It's much more efficient to check each disk write for success and bail
out at the first failure.