Re: [PATCH v2 13/13] commit-graph: specify OID version for SHA-256
- From
Duy Nguyen <pclouds@gmail.com>
- Date
- Oct 16, 2018, 15:35 UTC
- Message-ID
- <CACsJy8C6o9PAHsm+t7Rijg6jsz5dXZ5pT79nYGdGbKuK6gGTLQ@mail.gmail.com>
- In-Reply-To
- <20181015021900.1030041-14-sandals@crustytoothpaste.net>
On Mon, Oct 15, 2018 at 4:23 AM brian m. carlson <sandals@crustytoothpaste.net> wrote:
Show 25 quoted lines
>
> Since the commit-graph code wants to serialize the hash algorithm into
> the data store, specify a version number for each supported algorithm.
> Note that we don't use the values of the constants themselves, as they
> are internal and could change in the future.
>
> Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
> ---
> commit-graph.c | 9 ++++++++-
> 1 file changed, 8 insertions(+), 1 deletion(-)
>
> diff --git a/commit-graph.c b/commit-graph.c
> index 7a28fbb03f..e587c21bb6 100644
> --- a/commit-graph.c
> +++ b/commit-graph.c
> @@ -45,7 +45,14 @@ char *get_commit_graph_filename(const char *obj_dir)
>
> static uint8_t oid_version(void)
> {
> - return 1;
> + switch (hash_algo_by_ptr(the_hash_algo)) {
> + case GIT_HASH_SHA1:
> + return 1;
> + case GIT_HASH_SHA256:
> + return 2;Should we just increase this field to uint32_t and store format_id instead? That will keep oid version unique in all data formats.
Show 6 quoted lines
> + default:
> + BUG("unknown hash algorithm");
> + }
> }
>
> static struct commit_graph *alloc_commit_graph(void)-- Duy