diff options
| author | zemul <zemul@foxmail.com> | 2023-03-03 00:26:55 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-03-02 08:26:55 -0800 |
| commit | bd6f2716d3c11da36643b07a66a521b01e4c54e9 (patch) | |
| tree | 0e7a13796712045978eae42f9eb078366ddf96f6 | |
| parent | 0bf56298d5f2e106760c0f44c4ccb9a3d2a78ca6 (diff) | |
| download | seaweedfs-bd6f2716d3c11da36643b07a66a521b01e4c54e9.tar.xz seaweedfs-bd6f2716d3c11da36643b07a66a521b01e4c54e9.zip | |
fix_read_tomb_needle_meta (#4263)
Co-authored-by: zemul <zhouzemiao@ihuman.com>
| -rw-r--r-- | weed/storage/needle/needle_read_page.go | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/weed/storage/needle/needle_read_page.go b/weed/storage/needle/needle_read_page.go index 2459e618b..36ddc3320 100644 --- a/weed/storage/needle/needle_read_page.go +++ b/weed/storage/needle/needle_read_page.go @@ -66,8 +66,12 @@ func (n *Needle) ReadNeedleMeta(r backend.BackendStorageFile, offset int64, size if err != nil { return err } + var index int - index, err = n.readNeedleDataVersion2NonData(metaSlice) + if size.IsValid() { + index, err = n.readNeedleDataVersion2NonData(metaSlice) + } + n.Checksum = CRC(util.BytesToUint32(metaSlice[index : index+NeedleChecksumSize])) if version == Version3 { n.AppendAtNs = util.BytesToUint64(metaSlice[index+NeedleChecksumSize : index+NeedleChecksumSize+TimestampSize]) |
