From: Nicolas Pitre <nico@cam.org>
To: Linus Torvalds <torvalds@osdl.org>
Cc: Junio C Hamano <junkio@cox.net>, git@vger.kernel.org
Subject: Re: [PATCH] change the unpack limit treshold to a saner value
Date: Wed, 06 Dec 2006 22:24:14 -0500 (EST) [thread overview]
Message-ID: <Pine.LNX.4.64.0612062213500.2630@xanadu.home> (raw)
In-Reply-To: <Pine.LNX.4.64.0612061700120.3542@woody.osdl.org>
On Wed, 6 Dec 2006, Linus Torvalds wrote:
> We have a much easier time handling many loose packed objects than many
> pack-files. For many reasons, but two really obvious ones:
>
> - pack-file indexes get read in on startup, and we maintain an explicit
> list of them. Having lots of pack-files adds overhead that doesn't
> exist for lots of loose objects.
>
> - loose files are spread out over 256 subdirectories to make lookup
> easier, packfiles are not (and always create an index file too).
>
> So in general, as a trivial heuristic, you probably want about 512 times
> as many loose objects as you want pack-files, i fonly because of the
> latter issue, because you can much more easily handle lots of loose
> objects than lots of pack-files. So it's _not_ a factor of 3. Or even 10.
>
> But since there _is_ reason to do pack-files too, and since using too big
> a value means that you never end up keeping a pack-file _at_all_ if you
> pull often, I'd suggest that rather than use a limit of 512 you go for
> something like 100-200 objects as the threshold (of course, the proper one
> would depend on the distribution of the size of your pack-files, but I'll
> just hand-wave and say that together with occasional re-packing, something
> in that range is _generally_ going to be a good idea).
Note that this setting is currently observed for pushes not pulls.
On the pull side you currentli need to provide -k for not exploding
packs.
So the question is what number of objects on average do pushes have? If
most pushes are below the treshold this is not going to be really
useful.
And I think 5000 is definitely way too high. 10 might be too small
indeed. 100 is maybe a good default to try out.
next prev parent reply other threads:[~2006-12-07 3:24 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-12-06 21:08 [PATCH] change the unpack limit treshold to a saner value Nicolas Pitre
2006-12-06 22:24 ` [PATCH] change the unpack limit threshold " Junio C Hamano
2006-12-07 0:19 ` Nicolas Pitre
2006-12-07 1:08 ` [PATCH] change the unpack limit treshold " Linus Torvalds
2006-12-07 3:24 ` Nicolas Pitre [this message]
2006-12-07 3:39 ` Linus Torvalds
2006-12-07 4:01 ` [PATCH take 2] " Nicolas Pitre
2006-12-07 7:59 ` Shawn Pearce
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Pine.LNX.4.64.0612062213500.2630@xanadu.home \
--to=nico@cam.org \
--cc=git@vger.kernel.org \
--cc=junkio@cox.net \
--cc=torvalds@osdl.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).