in file.go [405:427]
func (f *File) truncate(sz int64) reason {
const op = "txfile/truncate"
const errMsg = "can not update file size"
isMMapped := f.mapped != nil
if isMMapped {
if err := f.munmap(); err != nil {
return f.errWrap(op, err).report(errMsg)
}
}
if err := f.file.Truncate(sz); err != nil {
return f.errWrap(op, err).report(errMsg)
}
if isMMapped {
if err := f.mmap(); err != nil {
return f.errWrap(op, err).report(errMsg)
}
}
return nil
}