Browse Source

types packages is imported more than onece (#3838)

pull/3848/head
Guo Lei 2 years ago
committed by GitHub
parent
commit
f95c25e113
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 9
      weed/storage/needle_map_leveldb.go
  2. 3
      weed/storage/volume_vacuum.go

9
weed/storage/needle_map_leveldb.go

@ -10,7 +10,6 @@ import (
"github.com/syndtr/goleveldb/leveldb/opt" "github.com/syndtr/goleveldb/leveldb/opt"
"github.com/seaweedfs/seaweedfs/weed/storage/idx" "github.com/seaweedfs/seaweedfs/weed/storage/idx"
"github.com/seaweedfs/seaweedfs/weed/storage/types"
"github.com/seaweedfs/seaweedfs/weed/util" "github.com/seaweedfs/seaweedfs/weed/util"
"github.com/syndtr/goleveldb/leveldb" "github.com/syndtr/goleveldb/leveldb"
@ -56,7 +55,7 @@ func NewLevelDbNeedleMap(dbFileName string, indexFile *os.File, opts *opt.Option
} }
} }
glog.V(0).Infof("Loading %s... , watermark: %d", dbFileName, getWatermark(m.db)) glog.V(0).Infof("Loading %s... , watermark: %d", dbFileName, getWatermark(m.db))
m.recordCount = uint64(m.indexFileOffset / types.NeedleMapEntrySize)
m.recordCount = uint64(m.indexFileOffset / NeedleMapEntrySize)
watermark := (m.recordCount / watermarkBatchSize) * watermarkBatchSize watermark := (m.recordCount / watermarkBatchSize) * watermarkBatchSize
err = setWatermark(m.db, watermark) err = setWatermark(m.db, watermark)
if err != nil { if err != nil {
@ -100,10 +99,10 @@ func generateLevelDbFile(dbFileName string, indexFile *os.File) error {
glog.Fatalf("stat file %s: %v", indexFile.Name(), err) glog.Fatalf("stat file %s: %v", indexFile.Name(), err)
return err return err
} else { } else {
if watermark*types.NeedleMapEntrySize > uint64(stat.Size()) {
if watermark*NeedleMapEntrySize > uint64(stat.Size()) {
glog.Warningf("wrong watermark %d for filesize %d", watermark, stat.Size()) glog.Warningf("wrong watermark %d for filesize %d", watermark, stat.Size())
} }
glog.V(0).Infof("generateLevelDbFile %s, watermark %d, num of entries:%d", dbFileName, watermark, (uint64(stat.Size())-watermark*types.NeedleMapEntrySize)/types.NeedleMapEntrySize)
glog.V(0).Infof("generateLevelDbFile %s, watermark %d, num of entries:%d", dbFileName, watermark, (uint64(stat.Size())-watermark*NeedleMapEntrySize)/NeedleMapEntrySize)
} }
return idx.WalkIndexFile(indexFile, watermark, func(key NeedleId, offset Offset, size Size) error { return idx.WalkIndexFile(indexFile, watermark, func(key NeedleId, offset Offset, size Size) error {
if !offset.IsZero() && size.IsValid() { if !offset.IsZero() && size.IsValid() {
@ -270,7 +269,7 @@ func (m *LevelDbNeedleMap) UpdateNeedleMap(v *Volume, indexFile *os.File, opts *
return e return e
} }
m.indexFileOffset = stat.Size() m.indexFileOffset = stat.Size()
m.recordCount = uint64(stat.Size() / types.NeedleMapEntrySize)
m.recordCount = uint64(stat.Size() / NeedleMapEntrySize)
//set watermark //set watermark
watermark := (m.recordCount / watermarkBatchSize) * watermarkBatchSize watermark := (m.recordCount / watermarkBatchSize) * watermarkBatchSize

3
weed/storage/volume_vacuum.go

@ -13,7 +13,6 @@ import (
"github.com/seaweedfs/seaweedfs/weed/storage/needle" "github.com/seaweedfs/seaweedfs/weed/storage/needle"
"github.com/seaweedfs/seaweedfs/weed/storage/needle_map" "github.com/seaweedfs/seaweedfs/weed/storage/needle_map"
"github.com/seaweedfs/seaweedfs/weed/storage/super_block" "github.com/seaweedfs/seaweedfs/weed/storage/super_block"
"github.com/seaweedfs/seaweedfs/weed/storage/types"
. "github.com/seaweedfs/seaweedfs/weed/storage/types" . "github.com/seaweedfs/seaweedfs/weed/storage/types"
"github.com/seaweedfs/seaweedfs/weed/util" "github.com/seaweedfs/seaweedfs/weed/util"
) )
@ -341,7 +340,7 @@ func (v *Volume) makeupDiff(newDatFileName, newIdxFileName, oldDatFileName, oldI
} }
} }
return v.tmpNm.DoOffsetLoading(v, idx, uint64(idxSize)/types.NeedleMapEntrySize)
return v.tmpNm.DoOffsetLoading(v, idx, uint64(idxSize)/NeedleMapEntrySize)
} }
type VolumeFileScanner4Vacuum struct { type VolumeFileScanner4Vacuum struct {

Loading…
Cancel
Save