Subject: [PATCH v3 00/13] more miscellaneous Bloom filter improvements, redux

From: Taylor Blau <[email-masked]>
Date: Thu, 17 Sep 2020 22:58:35 -0400

Hi again,

Here's a few more changes to the "Bloom filter improvements" topic,
sent as one brand-new re-roll in order to simplify queuing. It
incorporates:

  - Junio's changes from applying to 'seen' (namely, dropping references
    to "too-small" commits in favor of the much more clear "empty"
    commits).

  - On top, I applied Gàbor's data gathered in [1] to 10/13 (and added a
    little more detail on the absolute and relative size differences of
    the resulting commit-graph files built before/after that patch).

Thanks to everyone who has helped out along the way with this series
(Stolee, Gàbor, Junio, Jakub, and I am sure that I am forgetting some...).

Sorry to have given anyone the impression that I was abandoning this
topic; I'm definitely not ;-).

[1]: https://lore.kernel.org/git/[email-masked]/

Derrick Stolee (1):
  bloom/diff: properly short-circuit on max_changes

Taylor Blau (12):
  commit-graph: introduce 'get_bloom_filter_settings()'
  t4216: use an '&&'-chain
  commit-graph: pass a 'struct repository *' in more places
  t/helper/test-read-graph.c: prepare repo settings
  commit-graph: respect 'commitGraph.readChangedPaths'
  commit-graph.c: store maximum changed paths
  bloom: split 'get_bloom_filter()' in two
  bloom: use provided 'struct bloom_filter_settings'
  bloom: encode out-of-bounds filters as non-empty
  commit-graph: rename 'split_commit_graph_opts'
  builtin/commit-graph.c: introduce '--max-new-filters=<n>'
  commit-graph: introduce 'commitGraph.maxNewFilters'

 Documentation/config.txt                      |   2 +
 Documentation/config/commitgraph.txt          |   8 +
 Documentation/git-commit-graph.txt            |   6 +
 .../technical/commit-graph-format.txt         |   2 +-
 blame.c                                       |   8 +-
 bloom.c                                       |  59 +++--
 bloom.h                                       |  29 ++-
 builtin/commit-graph.c                        |  63 ++++-
 commit-graph.c                                | 141 +++++++---
 commit-graph.h                                |  17 +-
 diff.h                                        |   2 -
 fuzz-commit-graph.c                           |   5 +-
 line-log.c                                    |   2 +-
 repo-settings.c                               |   3 +
 repository.h                                  |   1 +
 revision.c                                    |   7 +-
 t/helper/test-bloom.c                         |   4 +-
 t/helper/test-read-graph.c                    |   3 +-
 t/t0095-bloom.sh                              |   8 +-
 t/t4216-log-bloom.sh                          | 242 ++++++++++++++++--
 t/t5324-split-commit-graph.sh                 |  13 +
 tree-diff.c                                   |   5 +-
 22 files changed, 507 insertions(+), 123 deletions(-)
 create mode 100644 Documentation/config/commitgraph.txt

--
2.28.0.510.g375ecf1f36