Re: [PATCH v3 1/4] gitformat-commit-graph: describe version 2 of BDAT
- From
Ramsay Jones <ramsay@ramsayjones.plus.com>
- Date
- Jun 8, 2023, 19:52 UTC
- Message-ID
- <1d31a8a6-1e45-bc42-2485-ff39f3cea24b@ramsayjones.plus.com>
- In-Reply-To
- <d4b63945f6d52e68a4760393f787acde0fccc312.1686251688.git.jonathantanmy@google.com>
On 08/06/2023 20:21, Jonathan Tan wrote:
Show 27 quoted lines
> The code change to Git to support version 2 will be done in subsequent
> commits.
>
> Signed-off-by: Jonathan Tan <jonathantanmy@google.com>
> ---
> Documentation/gitformat-commit-graph.txt | 9 ++++++---
> 1 file changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/Documentation/gitformat-commit-graph.txt b/Documentation/gitformat-commit-graph.txt
> index 31cad585e2..9dab222830 100644
> --- a/Documentation/gitformat-commit-graph.txt
> +++ b/Documentation/gitformat-commit-graph.txt
> @@ -142,13 +142,16 @@ All multi-byte numbers are in network byte order.
>
> ==== Bloom Filter Data (ID: {'B', 'D', 'A', 'T'}) [Optional]
> * It starts with header consisting of three unsigned 32-bit integers:
> - - Version of the hash algorithm being used. We currently only support
> - value 1 which corresponds to the 32-bit version of the murmur3 hash
> + - Version of the hash algorithm being used. We currently support
> + value 2 which corresponds to the 32-bit version of the murmur3 hash
> implemented exactly as described in
> https://en.wikipedia.org/wiki/MurmurHash#Algorithm and the double
> hashing technique using seed values 0x293ae76f and 0x7e646e2 as
> described in https://doi.org/10.1007/978-3-540-30494-4_26 "Bloom Filters
> - in Probabilistic Verification"
> + in Probabilistic Verification". Version 1 bloom filters have a bug that appears
> + when int is signed and the repository has path names that have characters >=s/int is signed/char is signed/ ?
ATB, Ramsay Jones
Show 5 quoted lines
> + 0x80; Git supports reading and writing them, but this ability will be removed > + in a future version of Git. > - The number of times a path is hashed and hence the number of bit positions > that cumulatively determine whether a file is present in the commit. > - The minimum number of bits 'b' per entry in the Bloom filter. If the filter