lib/db: Hold the bloom filter the right way (fixes #6614) (#6617)

This commit is contained in:
Jakob Borg 2020-05-08 14:18:00 +02:00 committed by GitHub
parent b0b3abf76b
commit c0c18a568c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 3 additions and 3 deletions

View File

@ -647,7 +647,7 @@ func (db *Lowlevel) gcIndirect(ctx context.Context) error {
}
key := blockListKey(it.Key())
if blockFilter.Has(bloomHash(key)) {
if blockFilter.Has(bloomHash(key.BlocksHash())) {
matchedBlocks++
continue
}
@ -672,8 +672,8 @@ func (db *Lowlevel) gcIndirect(ctx context.Context) error {
// Hash function for the bloomfilter: first eight bytes of the SHA-256.
// Big or little-endian makes no difference, as long as we're consistent.
func bloomHash(key blockListKey) uint64 {
return binary.BigEndian.Uint64(key.BlocksHash())
func bloomHash(key []byte) uint64 {
return binary.BigEndian.Uint64(key)
}
// CheckRepair checks folder metadata and sequences for miscellaneous errors.