Tweak readall allocation and renameData buffer reuse (#13108)

Use a single allocation for reading the file, not the growing buffer of `io.ReadAll`.

Reuse the write buffer if we can when writing metadata in RenameData.
This commit is contained in:
Klaus Post
2021-08-30 17:38:11 +02:00
committed by GitHub
parent 88e0aa1cb2
commit 470553ff5d
3 changed files with 10 additions and 4 deletions

View File

@@ -34,6 +34,11 @@ func ReadFile(name string) ([]byte, error) {
return nil, err
}
defer f.Close()
return io.ReadAll(f)
st, err := f.Stat()
if err != nil {
return io.ReadAll(f)
}
dst := make([]byte, st.Size())
_, err = io.ReadFull(f, dst)
return dst, err
}