git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Large repo and pack.packsizelimit

From
th.acker66@arcor.de <th.acker66@arcor.de>
Date
May 3, 2012, 11:57 UTC
Message-ID
<37267143.413194.1336046278583.JavaMail.ngmail@webmail07.arcor-online.net>
Hello,

I am using MSysgit 1.7.9 on WinXP 32bit and have a very large repo (10GB in .git; 20GB in source tree). I had to set pack.packsizelimit=1024MB to prevent "out of memory" during repacking in git-gc and everything seemed to work fine.

When I tried to clone this repo an "out of memory" occured because the packs to be transferred by the git protocol are not limited by pack.packsizelimit. I "fixed" this by setting transfer.unpackLimit=100000 and thus transferring only loose objects. This is very slow but it works.

In this cloned repo now git-gc again causes "out of memory" because it tries to pack all loose objects in one go thereby seemingly not respecting pack.packsizelimit ... (Setting --window-memory=512m in git-repack did not help here.)

Am I doing anything wrong here or is this a bug/feature in git?

BTW1 Repo is very large but contains only one really large file with 1.2GB; all other files are smaller than 256MB. BTW2 I cannot use 1.7.10 due to the http authorization bug.

--- Thomas

Next: Jeff King
Message 1 of 10 in “Large repo and pack.packsizelimit”
  1. th.acker66@arcor.deMay 3, 2012
  2. Jeff KingMay 8, 2012
  3. Nicolas PitreMay 8, 2012
  4. Jeff KingMay 8, 2012
  5. Nicolas PitreMay 8, 2012
  6. ThomasMay 9, 2012
  7. Nguyen Thai Ngoc DuyMay 9, 2012
  8. ThomasMay 9, 2012
  9. Junio C HamanoMay 9, 2012
  10. ThomasMay 10, 2012

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.