mirror of
https://github.com/prometheus/prometheus.git
synced 2025-03-05 20:59:13 -08:00
fix(promql/query_logger): close file in error handling (#13948)
Signed-off-by: guoguangwu <guoguangwug@gmail.com>
This commit is contained in:
parent
34ee8c6078
commit
9fda9443d4
|
@ -96,12 +96,14 @@ func getMMapedFile(filename string, filesize int, logger log.Logger) ([]byte, io
|
||||||
|
|
||||||
err = file.Truncate(int64(filesize))
|
err = file.Truncate(int64(filesize))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
file.Close()
|
||||||
level.Error(logger).Log("msg", "Error setting filesize.", "filesize", filesize, "err", err)
|
level.Error(logger).Log("msg", "Error setting filesize.", "filesize", filesize, "err", err)
|
||||||
return nil, nil, err
|
return nil, nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
fileAsBytes, err := mmap.Map(file, mmap.RDWR, 0)
|
fileAsBytes, err := mmap.Map(file, mmap.RDWR, 0)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
file.Close()
|
||||||
level.Error(logger).Log("msg", "Failed to mmap", "file", filename, "Attempted size", filesize, "err", err)
|
level.Error(logger).Log("msg", "Failed to mmap", "file", filename, "Attempted size", filesize, "err", err)
|
||||||
return nil, nil, err
|
return nil, nil, err
|
||||||
}
|
}
|
||||||
|
|
|
@ -110,10 +110,7 @@ func TestMMapFile(t *testing.T) {
|
||||||
filename := file.Name()
|
filename := file.Name()
|
||||||
defer os.Remove(filename)
|
defer os.Remove(filename)
|
||||||
|
|
||||||
fileAsBytes, closer, err := getMMapedFile(filename, 2, nil)
|
fileAsBytes, _, err := getMMapedFile(filename, 2, nil)
|
||||||
if err != nil {
|
|
||||||
t.Cleanup(func() { closer.Close() })
|
|
||||||
}
|
|
||||||
|
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
copy(fileAsBytes, "ab")
|
copy(fileAsBytes, "ab")
|
||||||
|
|
Loading…
Reference in a new issue