diff --git a/weed-fs/src/pkg/directory/volume_mapping.go b/weed-fs/src/pkg/directory/volume_mapping.go index 947eb65e9..114f212e2 100644 --- a/weed-fs/src/pkg/directory/volume_mapping.go +++ b/weed-fs/src/pkg/directory/volume_mapping.go @@ -92,12 +92,12 @@ func (m *Mapper) NextFileId(c string) (uint64,int) { } count = 1 } + m.sequenceLock.Lock() + defer m.sequenceLock.Unlock() if m.fileIdCounter < count { - m.sequenceLock.Lock(); m.fileIdCounter = FileIdSaveInterval m.FileIdSequence += FileIdSaveInterval m.saveSequence() - m.sequenceLock.Unlock(); } m.fileIdCounter = m.fileIdCounter - count return m.FileIdSequence - m.fileIdCounter, int(count)