Web lists-archives.com

Re: [PATCH 3/5] pack-objects: add --sparse option




On 11/28/2018 5:11 PM, Stefan Beller wrote:
+--sparse::
+       Use the "sparse" algorithm to determine which objects to include in
+       the pack. This can have significant performance benefits when computing
+       a pack to send a small change. However, it is possible that extra
+       objects are added to the pack-file if the included commits contain
+       certain types of direct renames.
As a user, where do I find a discussion of these walking algorithms?
(i.e. how can I tell if I can really expect to gain performance benefits,
what are the tradeoffs? "If it were strictly better than the original,
it would be on by default" might be a thought of a user)

You're right that having this hidden as an opt-in config variable makes it hard to discover as a typical user.

I would argue that we should actually make the config setting true by default, and recommend that servers opt-out. Here are my reasons:

1. The vast majority of users are clients.

2. Client users are not likely to know about and tweak these settings.

3. Server users are more likely to keep an eye on the different knobs they can tweak.

4. Servers should use the reachability bitmaps, which don't use this logic anyway.

While _eventually_ we should make this opt-out, we shouldn't do that until it has cooked a while.

Thanks,
-Stolee