MCPcopy
hub / github.com/dgraph-io/badger / decrIteratorCount

Method decrIteratorCount

value.go:759–780  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

757}
758
759func (vlog *valueLog) decrIteratorCount() error {
760 num := atomic.AddInt32(&vlog.numActiveIterators, -1)
761 if num != 0 {
762 return nil
763 }
764
765 vlog.filesLock.Lock()
766 lfs := make([]*logFile, 0, len(vlog.filesToBeDeleted))
767 for _, id := range vlog.filesToBeDeleted {
768 lfs = append(lfs, vlog.filesMap[id])
769 delete(vlog.filesMap, id)
770 }
771 vlog.filesToBeDeleted = nil
772 vlog.filesLock.Unlock()
773
774 for _, lf := range lfs {
775 if err := vlog.deleteLogFile(lf); err != nil {
776 return err
777 }
778 }
779 return nil
780}
781
782func (vlog *valueLog) deleteLogFile(lf *logFile) error {
783 if lf == nil {

Callers 1

CloseMethod · 0.80

Calls 1

deleteLogFileMethod · 0.95

Tested by

no test coverage detected