volume: avoid compacting wait group

This commit is contained in:
Chris Lu 2019-07-21 13:49:59 -07:00
parent 4b15c8f0c4
commit 33b3366043
3 changed files with 1 additions and 8 deletions

View file

@ -22,7 +22,6 @@ type Volume struct {
Collection string
dataFile *os.File
nm NeedleMapper
compactingWg sync.WaitGroup
needleMapKind NeedleMapType
readOnly bool

View file

@ -136,11 +136,7 @@ func (v *Volume) deleteNeedle(n *needle.Needle) (uint32, error) {
func (v *Volume) readNeedle(n *needle.Needle) (int, error) {
nv, ok := v.nm.Get(n.Id)
if !ok || nv.Offset.IsZero() {
v.compactingWg.Wait()
nv, ok = v.nm.Get(n.Id)
if !ok || nv.Offset.IsZero() {
return -1, ErrorNotFound
}
return -1, ErrorNotFound
}
if nv.Size == TombstoneFileSize {
return -1, errors.New("already deleted")

View file

@ -46,8 +46,6 @@ func (v *Volume) CommitCompact() error {
v.dataFileAccessLock.Lock()
defer v.dataFileAccessLock.Unlock()
glog.V(3).Infof("Got volume %d committing lock...", v.Id)
v.compactingWg.Add(1)
defer v.compactingWg.Done()
v.nm.Close()
if err := v.dataFile.Close(); err != nil {
glog.V(0).Infof("fail to close volume %d", v.Id)