Skip to content

Commit

Permalink
fix(promql/query_logger): close file in error handling (#13948)
Browse files Browse the repository at this point in the history
Signed-off-by: guoguangwu <guoguangwug@gmail.com>
  • Loading branch information
testwill committed Apr 30, 2024
1 parent 34ee8c6 commit 9fda944
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 4 deletions.
2 changes: 2 additions & 0 deletions promql/query_logger.go
Expand Up @@ -96,12 +96,14 @@ func getMMapedFile(filename string, filesize int, logger log.Logger) ([]byte, io

err = file.Truncate(int64(filesize))
if err != nil {
file.Close()
level.Error(logger).Log("msg", "Error setting filesize.", "filesize", filesize, "err", err)
return nil, nil, err
}

fileAsBytes, err := mmap.Map(file, mmap.RDWR, 0)
if err != nil {
file.Close()
level.Error(logger).Log("msg", "Failed to mmap", "file", filename, "Attempted size", filesize, "err", err)
return nil, nil, err
}
Expand Down
5 changes: 1 addition & 4 deletions promql/query_logger_test.go
Expand Up @@ -110,10 +110,7 @@ func TestMMapFile(t *testing.T) {
filename := file.Name()
defer os.Remove(filename)

fileAsBytes, closer, err := getMMapedFile(filename, 2, nil)
if err != nil {
t.Cleanup(func() { closer.Close() })
}
fileAsBytes, _, err := getMMapedFile(filename, 2, nil)

require.NoError(t, err)
copy(fileAsBytes, "ab")
Expand Down

0 comments on commit 9fda944

Please sign in to comment.