Re: [PATCH 2/2] fetch: forgo full connectivity check if --filter
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Jan 30, 2020, 18:57 UTC
- Message-ID
- <xmqqimksdb6w.fsf@gitster-ct.c.googlers.com>
- In-Reply-To
- <20200129204326.GB17350@google.com>
Jonathan Nieder <jrnieder@gmail.com> writes:
Show 22 quoted lines
> Jonathan Tan wrote: > >> If a filter is specified, we do not need a full connectivity check on >> the contents of the packfile we just fetched; we only need to check that >> the objects referenced are promisor objects. >> >> This significantly speeds up fetches into repositories that have many >> promisor objects, because during the connectivity check, all promisor >> objects are enumerated (to mark them UNINTERESTING), and that takes a >> significant amount of time. >> >> Signed-off-by: Jonathan Tan <jonathantanmy@google.com> >> --- >> For example, a local fetch was sped up from 6.63s to 3.39s. The bulk of >> the remaining time is spent in yet another connectivity check >> (fetch_refs -> check_exist_and_connected) prior to the fetch - that will >> hopefully be done in a subsequent patch. > > Can this information (at least the speedup) be included in the comment > message? > > Or even better, can we demonstrate the impact using a perf test?
It does make sense, but let's queue these two first and then add it as a follow-up patch on top.
Thanks for writing and reviewing.