From: Junio C Hamano <gitster@pobox.com>
To: "Kristofer Karlsson via GitGitGadget" <gitgitgadget@gmail.com>
Cc: git@vger.kernel.org, Kristofer Karlsson <krka@spotify.com>,
Patrick Steinhardt <ps@pks.im>
Subject: Re: [PATCH v3 0/4] connected: add incremental connectivity check
Date: Mon, 12 Oct 2026 11:55:23 -0700 [thread overview]
Message-ID: <xmqqzewi695w.fsf@gitster.g> (raw)
In-Reply-To: <pull.2211.v3.git.1791806877.gitgitgadget@gmail.com> (Kristofer Karlsson via GitGitGadget's message of "Mon, 12 Oct 2026 12:07:53 +0000")
"Kristofer Karlsson via GitGitGadget" <gitgitgadget@gmail.com>
writes:
> I'll just mention a short summary here, to avoid repeating what's already in
> the commit message. The incremental mode is faster than the full mode when
> there are few commits to verify and when the active object tree is large. In
> the happy case, the work tracks the changed paths and their comparison trees
> rather than the full reachable object closure, which substantially reduces
> the dependence on total repository size.
This is exciting.
> There are also regression cases in the synthetic fixtures. With long
> incoming histories, the extra parent-tree scans accumulate; in the synthetic
> fixture incremental is about 1.5x slower at 10000 commits. Per-commit
> ...
> A safety net for this regression could be to dynamically disable the
> incremental mode if the number of incoming commits is too large, but this is
> left out of the initial version to avoid overly speculative code.
Hmm, ... OK.
> Deepening fetches currently fall back to the full check because the full
> check omits --not --all for deepening -- there is no existing-reference
> boundary at which the walk can stop. An incremental approach is possible
> here too -- using the old shallow roots as the trusted boundary and walking
> the deepened ancestry forward -- but that is a separate change and left for
> future work. Deepening is also less common than regular fetch and
> receive-pack, where the speedup matters most.
OK.
next prev parent reply other threads:[~2026-10-12 18:55 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-14 9:47 [PATCH 0/2] connected: add incremental connectivity check Kristofer Karlsson via GitGitGadget
2026-09-14 9:47 ` [PATCH 1/2] Documentation: describe connectivity checking Kristofer Karlsson via GitGitGadget
2026-09-14 9:47 ` [PATCH 2/2] connected: add incremental connectivity check via rev-list Kristofer Karlsson via GitGitGadget
2026-09-14 15:26 ` Junio C Hamano
2026-09-14 17:46 ` Kristofer Karlsson
2026-09-14 15:12 ` [PATCH 0/2] connected: add incremental connectivity check Junio C Hamano
2026-09-28 13:02 ` [PATCH v2 " Kristofer Karlsson via GitGitGadget
2026-09-28 13:02 ` [PATCH v2 1/2] Documentation: describe connectivity checking Kristofer Karlsson via GitGitGadget
2026-10-05 7:59 ` Patrick Steinhardt
2026-10-05 19:17 ` Junio C Hamano
2026-10-06 5:59 ` Patrick Steinhardt
2026-10-06 10:03 ` Kristofer Karlsson
2026-10-06 10:12 ` Kristofer Karlsson
2026-09-28 13:02 ` [PATCH v2 2/2] connected: add incremental connectivity check via rev-list Kristofer Karlsson via GitGitGadget
2026-10-05 8:00 ` Patrick Steinhardt
2026-10-06 10:37 ` Kristofer Karlsson
2026-10-06 12:08 ` Patrick Steinhardt
2026-10-06 12:36 ` Kristofer Karlsson
2026-10-12 12:07 ` [PATCH v3 0/4] connected: add incremental connectivity check Kristofer Karlsson via GitGitGadget
2026-10-12 12:07 ` [PATCH v3 1/4] Documentation: describe connectivity checking Kristofer Karlsson via GitGitGadget
2026-10-12 12:07 ` [PATCH v3 2/4] p5413: add perf tests for connectivity check Kristofer Karlsson via GitGitGadget
2026-10-12 12:07 ` [PATCH v3 3/4] connected: add transfer.connectivityCheck config and rev-list flag Kristofer Karlsson via GitGitGadget
2026-10-12 18:49 ` Junio C Hamano
2026-10-13 7:41 ` Kristofer Karlsson
2026-10-12 12:07 ` [PATCH v3 4/4] connected: add incremental connectivity check via rev-list Kristofer Karlsson via GitGitGadget
2026-10-12 18:55 ` Junio C Hamano [this message]
2026-10-13 7:54 ` [PATCH v3 0/4] connected: add incremental connectivity check Kristofer Karlsson
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=xmqqzewi695w.fsf@gitster.g \
--to=gitster@pobox.com \
--cc=git@vger.kernel.org \
--cc=gitgitgadget@gmail.com \
--cc=krka@spotify.com \
--cc=ps@pks.im \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.