]> git.ipfire.org Git - thirdparty/git.git/commitdiff
revision: drop explicit check for commit graph
authorPatrick Steinhardt <ps@pks.im>
Thu, 4 Sep 2025 12:49:56 +0000 (14:49 +0200)
committerJunio C Hamano <gitster@pobox.com>
Thu, 4 Sep 2025 23:16:21 +0000 (16:16 -0700)
When filtering down revisions by paths we know to use bloom filters from
the commit graph, if we have any. The entry point for this is in
`check_maybe_different_in_bloom_filter()`, where we first verify that:

  - We do have a commit graph.

  - That the commit is contained therein by checking that we have a
    proper generation number.

  - And that the graph contains a bloom filter.

The first check is somewhat redundant though: if we don't have a commit
graph, then the second check would already tell us that we don't have a
generation number for the specific commit.

In theory this could be seen as a performance optimization to
short-circuit for scenarios where there is no commit graph. But in
practice this shouldn't matter: if there is no commit graph, then the
commit graph data slab would also be unpopulated and thus a lookup of
the commit should happen in constant time.

Drop the unnecessary check.

Signed-off-by: Patrick Steinhardt <ps@pks.im>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
revision.c

index 6ba8f670542ce3a9110eeb4ee30d9f06e8b68607..6018f30a99e5f3624be66950b4aefcf831d275b4 100644 (file)
@@ -774,9 +774,6 @@ static int check_maybe_different_in_bloom_filter(struct rev_info *revs,
        struct bloom_filter *filter;
        int result = 0;
 
-       if (!revs->repo->objects->commit_graph)
-               return -1;
-
        if (commit_graph_generation(commit) == GENERATION_NUMBER_INFINITY)
                return -1;