[autofile] close file before renaming it

this might fix our windows bug https://github.com/tendermint/tendermint/issues/444

0980f8e197
This commit is contained in:
Anton Kaliaev
2017-05-06 22:48:08 +04:00
parent 8f5a175ff4
commit 74a7f8c92b

View File

@@ -224,15 +224,17 @@ func (g *Group) RotateFile() {
g.mtx.Lock()
defer g.mtx.Unlock()
dstPath := filePathForIndex(g.Head.Path, g.maxIndex, g.maxIndex+1)
err := os.Rename(g.Head.Path, dstPath)
if err != nil {
headPath := g.Head.Path
if err := g.Head.closeFile(); err != nil {
panic(err)
}
err = g.Head.closeFile()
if err != nil {
indexPath := filePathForIndex(headPath, g.maxIndex, g.maxIndex+1)
if err := os.Rename(headPath, indexPath); err != nil {
panic(err)
}
g.maxIndex += 1
}