oridb/git9

OOM when pulling Guix sources

Closed this issue · 8 comments

cpu% git/clone 'git://git.savannah.gnu.org/guix.git'
fetching...
indexing (0/288594):......................fetch 2966: Killed: Insufficient physical memory
clone failed.
cleaning up guix

Is this expected?

after adding a few gigs of swap:

cpu% git/clone 'git://git.savannah.gnu.org/guix.git'
fetching...
indexing (0/288594):...............................git/fetch: malloc: segments overlap
clone failed.
cleaning up guix
cpu% 
oridb commented

Is this still a problem for you? (lots of changes and efficiency improvements since this was posted)

oridb commented

(Works for me, tentatively closing)

My CPU server was down so I couldn't test it, I'm trying to clone it again, but if it worked for you, it's probably fixed.

Still getting this error with swap enabled:

cpu% git/clone 'git://git.savannah.gnu.org/guix.git'
fetching...
indexing (0/299424):.................................git/fetch: malloc: segments overlap
cpu% 

Might be a bug in malloc though, maybe an overflow?

The system is a Raspberry Pi 3 B+, running a (slightly outdated, but only by a few months) 32 bit kernel.

oridb commented

That message means it's definitely running out of memory (segments overlap means that the heap has grown to meet the stack). I'm a bit surprised, but I guess it's plausible. Try dropping Cachemax in git.h to maybe, 512, and report back?

If not, maybe turn the out of memory in malloc into an abort so you can run leak on the broken proc. guix doesn't seem like it's particuarly big, so I'm not sure what would be taking all that memory.