On Fri, Oct 11, 2019 at 08:31:30AM -0400, Derrick Stolee wrote:
> >> Ensure that these lazy fetches do not occur.
> >
> > That makes sense. For similar reasons, should we be using
> > OBJECT_INFO_QUICK here? If the other side has a bunch of ref tips that
> > we don't have, we'll end up re-scanning the pack directory over and over
> > (which is _usually_ pretty quick, but can be slow if you have a lot of
> > packs locally). And it's OK if we racily miss out on an exclusion due to
> > somebody else repacking simultaneously.
>
> That's a good idea. We can hint to the object store that we don't expect
> misses to be due to a concurrent repack, so we don't want to reprepare
> pack-files.
As a general rule (and why I'm raising this issue in reply to Jonathan's
patch), I think most or all sites that want OBJECT_INFO_QUICK will want
SKIP_FETCH_OBJECT as well, and vice versa. The reasoning is generally
the same:
- it's OK to racily have a false negative (we'll still be correct, but
possibly a little less optimal)
- it's expected and normal to be missing the object, so spending time
double-checking the pack store wastes measurable time in real-world
cases
-Peff