summaryrefslogtreecommitdiff
path: root/builtin-pack-objects.c
diff options
context:
space:
mode:
authorNicolas Pitre <nico@cam.org>2009-08-05 20:55:07 (GMT)
committerJunio C Hamano <gitster@pobox.com>2009-08-06 03:14:54 (GMT)
commit5749b0b2f935dc418c98ba8e7c52c3291451bc4a (patch)
tree67e34e7cbc3b1bf0fa6bdf8f64c6859fc729416f /builtin-pack-objects.c
parentf0df1293acdba9513cae17e2c63b4169f1347371 (diff)
downloadgit-5749b0b2f935dc418c98ba8e7c52c3291451bc4a.zip
git-5749b0b2f935dc418c98ba8e7c52c3291451bc4a.tar.gz
git-5749b0b2f935dc418c98ba8e7c52c3291451bc4a.tar.bz2
don't let the delta cache grow unbounded in 'git repack'
I have 4GB of RAM on my system which should, in theory, be quite enough to repack a 600 MB repository. However the unbounded delta cache size always pushes it into swap, at which point everything virtually comes to a halt. So unbounded caches are never a good idea. A default of 256MB should be a good compromize between memory usage and speed where medium sized repositories are still likely to fit in the cache with a reasonable memory usage, and larger repositories are going to take quite some time to repack already anyway. While at it, clarify the associated config variable documentation entries a bit. Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin-pack-objects.c')
-rw-r--r--builtin-pack-objects.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/builtin-pack-objects.c b/builtin-pack-objects.c
index ef4bf6b..9cc8a84 100644
--- a/builtin-pack-objects.c
+++ b/builtin-pack-objects.c
@@ -86,7 +86,7 @@ static int pack_compression_level = Z_DEFAULT_COMPRESSION;
static int pack_compression_seen;
static unsigned long delta_cache_size = 0;
-static unsigned long max_delta_cache_size = 0;
+static unsigned long max_delta_cache_size = 256 * 1024 * 1024;
static unsigned long cache_max_small_delta_size = 1000;
static unsigned long window_memory_limit = 0;