Revert "volume: avoid file.stat(), file.seek() if possible during writes"

This reverts commit c78409a598.
This commit is contained in:
Chris Lu
2021-02-19 03:56:27 -08:00
parent b961cd6208
commit a1210d1e8d
2 changed files with 6 additions and 33 deletions

View File

@@ -41,7 +41,6 @@ type baseNeedleMapper struct {
indexFile *os.File
indexFileAccessLock sync.Mutex
indexFileOffset int64
}
func (nm *baseNeedleMapper) IndexFileSize() uint64 {
@@ -57,18 +56,11 @@ func (nm *baseNeedleMapper) appendToIndexFile(key NeedleId, offset Offset, size
nm.indexFileAccessLock.Lock()
defer nm.indexFileAccessLock.Unlock()
if nm.indexFileOffset == 0 {
if fileSize, err := nm.indexFile.Seek(0, 2); err != nil {
return fmt.Errorf("cannot seek end of indexfile %s: %v",
nm.indexFile.Name(), err)
} else {
nm.indexFileOffset = fileSize
}
}
written, err := nm.indexFile.WriteAt(bytes, nm.indexFileOffset)
if err == nil {
nm.indexFileOffset += int64(written)
if _, err := nm.indexFile.Seek(0, 2); err != nil {
return fmt.Errorf("cannot seek end of indexfile %s: %v",
nm.indexFile.Name(), err)
}
_, err := nm.indexFile.Write(bytes)
return err
}