From: Ken Pratt Date: Sun, 10 Aug 2008 19:47:37 GMT Subject: pack operation is thrashing my server Message-ID: Hi, I'm having memory issues when trying to clone a remote git repository. I'm running: "git clone git+ssh://user@foo.bar.com/var/git/foo" The remote repository is bare, and is 180MB in size (says du), with 1824 objects. The remote (VPS) server is running git version 1.5.6.4 on Arch Linux on a x86_64 Opteron with 256MB of dedicated RAM. The clone command fires off some packing operations that bring the server to its knees: PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 21782 kenpratt 20 0 444m 212m 272 D 3 83.0 0:04.98 git-pack-object The clone also seems to hang forever. Progress stays at 0% for hours, and it never progresses past compressing the first object. I've tried very conservative pack settings: [pack] threads = 1 windowmemory = 64M deltacachesize = 1M deltacachelimit = 1M [pack] threads = 1 windowmemory = 16M deltacachesize = 16M deltacachelimit = 0 I've tries many variations like those, but nothing seems to help. A "git repack -a -d" only takes 5 seconds to run on the same repository on my laptop (a non-bare copy), and seems to peak at ~160MB of RAM usage. Any tips/help would be greatly appreciated. This repository is still small -- it will eventually grow to multiple GB in size, as it is a mix of small text files and binaries ranging in size from 2MB to 200MB. Is it not feasible to clone repositories of that size that are hosted on a server with 256MB of RAM? Thanks! Ken