How to investigate "inflateInit: out of memory" in git cherry-pick?

Viewed 50

Background issue is that at $dayjob I've an automated process performing cherrypicks on a server (basically waits to be modified of branches of interest, cherrypicks them on various targets, and pushes those new branches out), on a pretty large repository (a few GBs, though the cherrypicks tend to be only a few commits at a time).

Usually this works fine, but from time to time a cherrypick will fail with a status 128 (which apparently means a die() call), and the only output of

inflateInit: out of memory (no message)

  • I've seen no commonality between the failing cherry-picks, they touch different files, have a different number of commits, different authors, ...
  • fsck on the repository (on the server) doesn't show anything suspicious
  • since there is no other output and cherry-pick has no verbose flag, there is no information coming from git
  • the memory load of the server is usually low (right now it's at 2.6GiB / 8GiB), it has plenty of headroom, and even with a serious repack (-AbFd --window=500) everything fits within physical memory with room to spare
  • there is no CPU or memory load warning on the monitoring, though that is unlikely as the cherry-pick process finishes very quickly (<2s) and the monitoring doesn't poll anywhere near that fast

I'm not quite sure how to try and investigate the issue to resolve it, whether it's a configuration error (missing configuration), a usage problem, ...

0 Answers
Related