From 75a92188f317b5c779516b34114c09f3373d62fb Mon Sep 17 00:00:00 2001 From: Stefano Babic Date: Fri, 10 Sep 2021 22:39:01 +0200 Subject: [PATCH] Do not duplicate index structure for uncompressed Index is just one, there is no need to duplicate the structure to support uthash for digest related to the uncompressed data. Drop index_uncomp and add uthash for uncompressed data. Signed-off-by: Stefano Babic --- src/lib/index/index_read.c | 4 ++-- src/lib/zck_private.h | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/lib/index/index_read.c b/src/lib/index/index_read.c index 9b2c435..36357da 100644 --- a/src/lib/index/index_read.c +++ b/src/lib/index/index_read.c @@ -105,9 +105,9 @@ bool index_read(zckCtx *zck, char *data, size_t size, size_t max_length) { return false; } memcpy(new->digest_uncompressed, data+length, zck->index.digest_size); - HASH_FIND(hh, zck->index.ht, new->digest, new->digest_size, tmp); + HASH_FIND(hhuncomp, zck->index.htuncomp, new->digest_uncompressed, new->digest_size, tmp); if(!tmp) - HASH_ADD_KEYPTR(hhuncomp, zck->index_uncomp.ht, new->digest_uncompressed, new->digest_size, + HASH_ADD_KEYPTR(hhuncomp, zck->index.htuncomp, new->digest_uncompressed, new->digest_size, new); length += zck->index.digest_size; } diff --git a/src/lib/zck_private.h b/src/lib/zck_private.h index 019bdb2..fa7ee77 100644 --- a/src/lib/zck_private.h +++ b/src/lib/zck_private.h @@ -173,6 +173,7 @@ struct zckIndex { zckChunk *last; zckChunk *current; zckChunk *ht; + zckChunk *htuncomp; }; /* Contains a single range */ @@ -264,7 +265,6 @@ struct zckCtx { zckIndex index; zckChunk *work_index_item; zckHash work_index_hash; - zckIndex index_uncomp; zckChunk *work_index_item_uncomp; zckHash work_index_hash_uncomp; size_t stream; -- 2.30.2