From: Petr Baudis <pasky@suse.cz>
To: Craig Schlenter <craig@codefountain.com>
Cc: git@vger.kernel.org
Subject: Balanced packing strategy
Date: Sat, 12 Nov 2005 14:59:47 +0100 [thread overview]
Message-ID: <20051112135947.GC30496@pasky.or.cz> (raw)
In-Reply-To: <cae2e895f6598781f4f22b76e781684b@codefountain.com>
Dear diary, on Sat, Nov 12, 2005 at 02:40:50PM CET, I got a letter
where Craig Schlenter <craig@codefountain.com> said that...
> On 12 Nov 2005, at 3:04 PM, Marcel Holtmann wrote:
>
> >every time Linus re-creates the pack for his linux-2.6 tree, I end up
> >with another pack. I use HTTP as transport and thus the new pack will
> >be
> >download (which is almost 100 MB), but that is fine.
> >[snip]
>
> The 100MB situation is not cool for those of us on a tight bandwidth
> budget or slow links. Can anyone tell me if the native git protocol is
> any better at this stuff please?
Yes, the native GIT protocol transfers only the objects you need.
But the 100MB situation is still bad. FWIW, this is my proposal I sent
about a month ago to some packs-related discussion at the kernel.org
mailing list (ok, I updated it a little):
The repacking should be done in such a way to minimize the overhead for
the dumb transport users. Ideal for this is some structure like (at the
end of october):
year2003.pack
year2004.pack
halfyear2004-2.pack
halfyear2005-1.pack
month4.pack
month5.pack
month6.pack
month7.pack
month8.pack
month9.pack
week37.pack
week38.pack
week39.pack
week40.pack
week41.pack
week42.pack
week43.pack
<individual objects for weeks 43, 44>
This has the property that the second half of given pack is covered by
objects with precision lower by one. This is a relatively high overload
(this can be balanced by only keeping the last third or whatever), but
it designed to reduce the overhead of fetching packs over dumb
transport. E.g. if it's almost the end of July and you last fetched at
the start of June, you will not have to get the whole halfyear2005-1
pack, but be able to catch up by just fetching month6 pack, and then few
week-packs.
For the autopacker (which should be ideally ran by some cronjob), this
means packing new week each week and getting rid of a week worth of
objects, packing new month each month and getting rid of a month worth
of objects, etc.
--
Petr "Pasky" Baudis
Stuff: http://pasky.or.cz/
VI has two modes: the one in which it beeps and the one in which
it doesn't.
next prev parent reply other threads:[~2005-11-12 13:59 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-11-12 13:04 Remove unneeded packs Marcel Holtmann
2005-11-12 13:13 ` Andreas Ericsson
2005-11-12 13:30 ` Marcel Holtmann
2005-11-12 22:02 ` Lukas Sandström
2005-11-12 22:13 ` Marcel Holtmann
2005-11-13 2:38 ` Junio C Hamano
2005-11-13 10:58 ` Lukas Sandström
2005-11-13 12:00 ` Sergey Vlasov
2005-11-13 12:07 ` Lukas Sandström
2005-11-13 12:20 ` Sergey Vlasov
2005-11-13 12:31 ` Lukas Sandström
2005-11-12 13:40 ` Craig Schlenter
2005-11-12 13:59 ` Petr Baudis [this message]
2005-11-12 15:14 ` Balanced packing strategy Craig Schlenter
2005-11-13 2:34 ` Junio C Hamano
2005-11-13 11:00 ` Petr Baudis
2005-11-13 20:06 ` Josef Weidendorfer
2005-11-13 23:13 ` Junio C Hamano
-- strict thread matches above, loose matches on Subject: below --
2005-11-14 5:03 Craig Schlenter
2005-11-14 10:24 ` Josef Weidendorfer
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=20051112135947.GC30496@pasky.or.cz \
--to=pasky@suse.cz \
--cc=craig@codefountain.com \
--cc=git@vger.kernel.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).