mirror of
https://github.com/taigrr/bitcask
synced 2025-01-18 04:03:17 -08:00
Add CRC Checksum checks on reading values back
This commit is contained in:
parent
120e854444
commit
e9c858d43f
@ -2,6 +2,7 @@ package bitcask
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"hash/crc32"
|
||||
"io"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
@ -61,6 +62,11 @@ func (b *Bitcask) Get(key string) ([]byte, error) {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
crc := crc32.ChecksumIEEE(e.Value)
|
||||
if crc != e.CRC {
|
||||
return nil, fmt.Errorf("error: crc checksum falied %s %d != %d", key, e.CRC, crc)
|
||||
}
|
||||
|
||||
return e.Value, nil
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user