From c9fdf61bd91875cdc71559cd9bab8314ad8775e1 Mon Sep 17 00:00:00 2001 From: Runxi Yu Date: Sun, 14 Jun 2026 14:13:45 +0000 Subject: object/store/packed, cmd/idx-bloom: NewBuilder wants a PackHash --- object/store/packed/pack.go | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'object/store/packed/pack.go') diff --git a/object/store/packed/pack.go b/object/store/packed/pack.go index ba865e51..9cd6162b 100644 --- a/object/store/packed/pack.go +++ b/object/store/packed/pack.go @@ -73,7 +73,7 @@ func openPack(root *os.Root, name string, objectFormat id.ObjectFormat) (*pack, return nil, fmt.Errorf("%w: pack %q: %w", ErrMalformedPackedStore, name, err) } - bloomMapping, filter := openBloom(root, name, objectFormat) + bloomMapping, filter := openBloom(root, name, objectFormat, idx.PackHash()) return &pack{ name: name, @@ -86,7 +86,7 @@ func openPack(root *os.Root, name string, objectFormat id.ObjectFormat) (*pack, }, nil } -func openBloom(root *os.Root, name string, objectFormat id.ObjectFormat) (*mmap.Mmap, *bloom.Bloom) { +func openBloom(root *os.Root, name string, objectFormat id.ObjectFormat, packHash []byte) (*mmap.Mmap, *bloom.Bloom) { mapping, err := mapFile(root, name+".bloom") if err != nil { return nil, nil @@ -99,6 +99,12 @@ func openBloom(root *os.Root, name string, objectFormat id.ObjectFormat) (*mmap. return nil, nil } + if !bytes.Equal(filter.PackHash(), packHash) { + _ = mapping.Close() + + return nil, nil + } + return mapping, &filter } -- cgit v1.3.1-10-gc9f91