remote: abort: no space left on device (but it seems there is enough space)

Matt Mackall mpm at selenic.com
Mon Apr 16 09:43:36 CDT 2007


On Mon, Apr 16, 2007 at 09:47:18AM -0500, TK Soh wrote:
> On 4/16/07, Alexis S. L. Carvalho <alexis at cecm.usp.br> wrote:
> > Thus spake Marcin Kasperski:
> > > While executing hg push, I got an error
> > >          remote: abort: no space left on device
> > > But there is about 2GB of free space on the remote side, and local .hg
> > > has about 500MB.
> > >
> > > Is mercurial trying to use some other filesystem (say /tmp or remote
> > > home)? Or what can
> > > be the reason of this error?
> >
> > To avoid keeping the repo locked while the client is uploading the data,
> > hg writes everything to a temporary file, locks the repo and then
> > uses this temporary file to add the revisions.
> 
> This is quite a surprise. I frequently check in fairly large files. So
> I guess I've 'lucky' so far. Is this documented somewhere accessible
> by users?
> 
> > Since we don't specify any directory, python obeys $TMPDIR/$TEMP/$TMP
> > and then falls back to /tmp, /var/tmp, ...
> >
> > Maybe we should create this temporary file inside .hg...  Hmm...
> 
> The concern is these tmp locations frequently get filled by users or
> stray processes on our systems. So .hg maybe a better place, for now.

If you set your $TMP environment variable to $HOME/.tmp, you'll avoid
those conflicts and improve your system security.

-- 
Mathematics is the supreme nostalgia of our time.


More information about the Mercurial mailing list