Merge branch 'tb/path-filter-fix'
commitecf7fc600a5218c9ee3863ee70d5a6e312164f30
authorJunio C Hamano <gitster@pobox.com>
Mon, 8 Jul 2024 21:53:09 +0000 (8 14:53 -0700)
committerJunio C Hamano <gitster@pobox.com>
Mon, 8 Jul 2024 21:53:10 +0000 (8 14:53 -0700)
treebcea9bd3948c998759ea848ee55592ac1e1f8a16
parent6f75d230a1661266c5582d174c7bb6a4d60842dc
parent9c8a9ec787149dc4f4b278d9bd8ad94c96691a5f
Merge branch 'tb/path-filter-fix'

The Bloom filter used for path limited history traversal was broken
on systems whose "char" is unsigned; update the implementation and
bump the format version to 2.

* tb/path-filter-fix:
  bloom: introduce `deinit_bloom_filters()`
  commit-graph: reuse existing Bloom filters where possible
  object.h: fix mis-aligned flag bits table
  commit-graph: new Bloom filter version that fixes murmur3
  commit-graph: unconditionally load Bloom filters
  bloom: prepare to discard incompatible Bloom filters
  bloom: annotate filters with hash version
  repo-settings: introduce commitgraph.changedPathsVersion
  t4216: test changed path filters with high bit paths
  t/helper/test-read-graph: implement `bloom-filters` mode
  bloom.h: make `load_bloom_filter_from_graph()` public
  t/helper/test-read-graph.c: extract `dump_graph_info()`
  gitformat-commit-graph: describe version 2 of BDAT
  commit-graph: ensure Bloom filters are read with consistent settings
  revision.c: consult Bloom filters for root commits
  t/t4216-log-bloom.sh: harden `test_bloom_filters_not_used()`
bloom.c
commit-graph.c
object.h
oss-fuzz/fuzz-commit-graph.c
repo-settings.c
repository.h
revision.c
t/helper/test-bloom.c
t/helper/test-read-graph.c