From: René Scharfe Date: Tue, 18 Oct 2016 16:42:07 GMT Subject: Re: git checkout crashes after server being updated to Debian X86_64 Message-ID: <1c70da04-d26b-f0af-8939-edc96de586d9@web.de> In-Reply-To: <6B2BE996-F696-4EB4-91CA-849D40B8802D@gmail.com> Am 18.10.2016 um 17:17 schrieb Raffael Reichelt: > Hello! > > I have a serious problem with git, After my provider had updated to a > X86_64 architecture git crashes with various memory-related errors. > This is happening remote when pushing to the repository from my local > machine as well as trying it on a shell on the server itself. > > This are the error-messages: > > fatal: Out of memory, realloc failed > fatal: recursion detected in die handler > fatal: recursion detected in die handler > > or > fatal: unable to create threaded lstat > fatal: recursion detected in die handler > or > fatal: unable to create threaded lstat > *** Error in `git': double free or corruption (fasttop): 0x0000000000a8ade0 *** > fatal: recursion detected in die handler > Aborted > > It’s obviously not a problem of the repository - happens with all of > them. I think it is also not a question of size - happens with a 80M > Repository as well as with a 500M one. > > Any way: did a > > git fsck > Prüfe Objekt-Verzeichnisse: 100% (256/256), Fertig. > Prüfe Objekte: 100% (56305/56305), Fertig. > > git gc --auto --prune=today —aggressive > git repack > > Additionally I played around some config parameters so my config now looks like: > [http] > postbuffer = 524288000 > [pack] > threads = 1 > deltaCacheSize = 128m > packSizeLimit = 128m > windowMemory = 128m > [core] > packedGitLimit = 128m > packedGitWindowSize = 128m > repositoryformatversion = 0 > filemode = true > bare = true > > I am running > git version 2.1.4 > > on > Linux infongp-de65 3.14.0-ui16196-uiabi1-infong-amd64 #1 SMP Debian 3.14.73-2~ui80+4 (2016-07-13) x86_64 GNU/Linux > > Anyone out there to help me getting out of this trouble? Git 2.1.4 is the version that comes with Debian stable according to https://packages.debian.org/jessie/git, so I guess using a more recent version is not a reasonable option. What do "file $(which git)" and "ulimit -a" return? Do you have an x86-64 binary and no unnecessarily low limits set? René