From: Taylor Blau <me@ttaylorr.com>
To: git@vger.kernel.org
Cc: dstolee@microsoft.com, gitster@pobox.com, peff@peff.net,
szeder.dev@gmail.com
Subject: [PATCH v2 00/13] more miscellaneous Bloom filter improvements, redux
Date: Wed, 16 Sep 2020 14:06:45 -0400 [thread overview]
Message-ID: <cover.1600279373.git.me@ttaylorr.com> (raw)
In-Reply-To: <cover.1599664389.git.me@ttaylorr.com>
Here's another re-roll of mine and Stolee's series to add a series of
improvements to the Bloom filter machinery, culminating in the
command-line flag '--max-new-filters'.
Much is left the same from [1], with two notable exceptions:
- I took much of Stolee's feedback from [2], since the suggestions
were good and we are rerolling, anyway.
- I dropped the trace2 calls that write JSON from within the
commit-graph machinery in favor of pure "data" writes, which are
easier to grep for. This caused some test refactoring and allowed us
to ultimately drop the 'test_bloom_filters_computed' function.
Hopefully this is it for this series ;). I think that it's in good shape
now, and I couldn't find anything in my own inspection that I wanted to
change. So, if others feel good, too, I think we should focus on
incremental fixes on top of this.
[1]: https://lore.kernel.org/git/cover.1599664389.git.me@ttaylorr.com/
[2]: https://lore.kernel.org/git/134d64a0-abb6-bdc9-2c05-7aded01a906a@gmail.com/
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 | 140 +++++++---
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 | 241 ++++++++++++++++--
t/t5324-split-commit-graph.sh | 13 +
tree-diff.c | 5 +-
22 files changed, 505 insertions(+), 123 deletions(-)
create mode 100644 Documentation/config/commitgraph.txt
--
2.28.0.510.g86fdc5f89a
next prev parent reply other threads:[~2020-09-16 18:07 UTC|newest]
Thread overview: 75+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-09-09 15:22 [PATCH 00/12] more miscellaneous Bloom filter improvements, redux Taylor Blau
2020-09-09 15:22 ` [PATCH 01/12] commit-graph: introduce 'get_bloom_filter_settings()' Taylor Blau
2020-09-09 15:22 ` [PATCH 02/12] t4216: use an '&&'-chain Taylor Blau
2020-09-09 15:22 ` [PATCH 03/12] commit-graph: pass a 'struct repository *' in more places Taylor Blau
2020-09-09 15:23 ` [PATCH 04/12] t/helper/test-read-graph.c: prepare repo settings Taylor Blau
2020-09-09 15:23 ` [PATCH 05/12] commit-graph: respect 'commitGraph.readChangedPaths' Taylor Blau
2020-09-09 15:23 ` [PATCH 06/12] commit-graph.c: store maximum changed paths Taylor Blau
2020-09-09 15:23 ` [PATCH 07/12] bloom: split 'get_bloom_filter()' in two Taylor Blau
2020-09-09 15:23 ` [PATCH 08/12] bloom: use provided 'struct bloom_filter_settings' Taylor Blau
2020-09-09 15:23 ` [PATCH 09/12] bloom/diff: properly short-circuit on max_changes Taylor Blau
2020-09-09 15:23 ` [PATCH 10/12] bloom: encode out-of-bounds filters as non-empty Taylor Blau
2020-09-10 3:35 ` Taylor Blau
2020-09-10 15:45 ` Taylor Blau
2020-09-11 18:15 ` Derrick Stolee
2020-09-09 15:23 ` [PATCH 11/12] commit-graph: rename 'split_commit_graph_opts' Taylor Blau
2020-09-09 15:24 ` [PATCH 12/12] builtin/commit-graph.c: introduce '--max-new-filters=<n>' Taylor Blau
2020-09-11 17:52 ` Jeff King
2020-09-11 18:59 ` Taylor Blau
2020-09-11 19:25 ` Taylor Blau
2020-09-14 20:12 ` Taylor Blau
2020-09-14 20:31 ` Derrick Stolee
2020-09-14 20:36 ` Taylor Blau
2020-09-15 0:59 ` Derrick Stolee
2020-09-15 4:31 ` Taylor Blau
2020-09-15 21:49 ` Junio C Hamano
2020-09-15 21:53 ` Taylor Blau
2020-09-11 19:47 ` Jeff King
2020-09-11 19:31 ` Junio C Hamano
2020-09-16 18:06 ` Taylor Blau [this message]
2020-09-16 18:06 ` [PATCH v2 01/13] commit-graph: introduce 'get_bloom_filter_settings()' Taylor Blau
2020-09-16 18:07 ` [PATCH v2 02/13] t4216: use an '&&'-chain Taylor Blau
2020-09-16 18:07 ` [PATCH v2 03/13] commit-graph: pass a 'struct repository *' in more places Taylor Blau
2020-09-16 18:07 ` [PATCH v2 04/13] t/helper/test-read-graph.c: prepare repo settings Taylor Blau
2020-09-16 18:07 ` [PATCH v2 05/13] commit-graph: respect 'commitGraph.readChangedPaths' Taylor Blau
2020-09-16 18:07 ` [PATCH v2 06/13] commit-graph.c: store maximum changed paths Taylor Blau
2020-09-16 18:07 ` [PATCH v2 07/13] bloom: split 'get_bloom_filter()' in two Taylor Blau
2020-09-16 18:07 ` [PATCH v2 08/13] bloom: use provided 'struct bloom_filter_settings' Taylor Blau
2020-09-16 18:07 ` [PATCH v2 09/13] bloom/diff: properly short-circuit on max_changes Taylor Blau
2020-09-16 18:07 ` [PATCH v2 10/13] bloom: encode out-of-bounds filters as non-empty Taylor Blau
2020-09-17 22:13 ` SZEDER Gábor
2020-09-17 23:13 ` Taylor Blau
2020-09-18 0:52 ` Junio C Hamano
2020-09-18 1:15 ` Taylor Blau
2020-09-16 18:08 ` [PATCH v2 11/13] commit-graph: rename 'split_commit_graph_opts' Taylor Blau
2020-09-16 18:08 ` [PATCH v2 12/13] builtin/commit-graph.c: introduce '--max-new-filters=<n>' Taylor Blau
2020-09-18 9:23 ` SZEDER Gábor
2020-09-18 13:27 ` Taylor Blau
2020-09-16 18:08 ` [PATCH v2 13/13] commit-graph: introduce 'commitGraph.maxNewFilters' Taylor Blau
2020-09-16 22:51 ` [PATCH v2 00/13] more miscellaneous Bloom filter improvements, redux Derrick Stolee
2020-09-16 23:07 ` Junio C Hamano
2020-09-17 0:45 ` Taylor Blau
2020-09-17 0:59 ` Junio C Hamano
2020-09-17 1:10 ` Taylor Blau
2020-09-17 13:34 ` Taylor Blau
2020-09-17 13:38 ` Derrick Stolee
2020-09-18 2:58 ` [PATCH v3 " Taylor Blau
2020-09-18 2:58 ` [PATCH v3 01/13] commit-graph: introduce 'get_bloom_filter_settings()' Taylor Blau
2020-09-18 2:58 ` [PATCH v3 02/13] t4216: use an '&&'-chain Taylor Blau
2020-09-18 2:59 ` [PATCH v3 03/13] commit-graph: pass a 'struct repository *' in more places Taylor Blau
2020-09-18 2:59 ` [PATCH v3 04/13] t/helper/test-read-graph.c: prepare repo settings Taylor Blau
2020-09-18 2:59 ` [PATCH v3 05/13] commit-graph: respect 'commitGraph.readChangedPaths' Taylor Blau
2020-09-18 2:59 ` [PATCH v3 06/13] commit-graph.c: store maximum changed paths Taylor Blau
2020-09-18 2:59 ` [PATCH v3 07/13] bloom: split 'get_bloom_filter()' in two Taylor Blau
2020-09-18 2:59 ` [PATCH v3 08/13] bloom: use provided 'struct bloom_filter_settings' Taylor Blau
2020-09-18 16:27 ` SZEDER Gábor
2020-09-18 16:32 ` Taylor Blau
2020-09-18 2:59 ` [PATCH v3 09/13] bloom/diff: properly short-circuit on max_changes Taylor Blau
2020-09-18 2:59 ` [PATCH v3 10/13] bloom: encode out-of-bounds filters as non-empty Taylor Blau
2020-09-18 2:59 ` [PATCH v3 11/13] commit-graph: rename 'split_commit_graph_opts' Taylor Blau
2020-09-18 2:59 ` [PATCH v3 12/13] builtin/commit-graph.c: introduce '--max-new-filters=<n>' Taylor Blau
2020-09-18 2:59 ` [PATCH v3 13/13] commit-graph: introduce 'commitGraph.maxNewFilters' Taylor Blau
2020-09-18 13:29 ` Taylor Blau
2020-09-18 17:43 ` Junio C Hamano
2020-09-18 13:31 ` [PATCH v3 00/13] more miscellaneous Bloom filter improvements, redux Taylor Blau
2020-09-18 13:34 ` Taylor Blau
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
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1600279373.git.me@ttaylorr.com \
--to=me@ttaylorr.com \
--cc=dstolee@microsoft.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=peff@peff.net \
--cc=szeder.dev@gmail.com \
/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.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).