From 2742ac351cbd8d051099ae94b206442b6bef2cc8 Mon Sep 17 00:00:00 2001 From: reesporte Date: Fri, 22 Jul 2022 11:55:07 -0500 Subject: [PATCH] catch errors on closing written-to files --- api_test.go | 4 +++- cmd/slurp/slurp.go | 1 - holder.go | 4 +--- rbf/tx_test.go | 3 ++- server/grpc_test.go | 6 ++++-- 5 files changed, 10 insertions(+), 8 deletions(-) diff --git a/api_test.go b/api_test.go index 13ec8f8ae..d39a7c3b1 100644 --- a/api_test.go +++ b/api_test.go @@ -1785,6 +1785,8 @@ func writeTestFile(t *testing.T, filename, content string) string { if err != nil { t.Fatalf("could not write string %v", err) } - defer f.Close() + if err := f.Close(); err != nil { + t.Fatalf("could not close file %v", err) + } return fname } diff --git a/cmd/slurp/slurp.go b/cmd/slurp/slurp.go index dfd01f063..931ab910b 100644 --- a/cmd/slurp/slurp.go +++ b/cmd/slurp/slurp.go @@ -137,7 +137,6 @@ func (r *stateMachine) Upload() error { } func UploadTar(srcFile string, client *pilosa.InternalClient, profile, host string) error { - f, err := os.Open(srcFile) if err != nil { return (err) diff --git a/holder.go b/holder.go index 600891dd7..2797324bf 100644 --- a/holder.go +++ b/holder.go @@ -1180,13 +1180,11 @@ func (h *Holder) logStartup() error { return errors.Wrap(err, "opening startup log") } - defer f.Close() - if _, err = f.WriteString(logLine); err != nil { return errors.Wrap(err, "writing startup log") } - return nil + return f.Close() } // holderSyncer is an active anti-entropy tool that compares the local holder diff --git a/rbf/tx_test.go b/rbf/tx_test.go index f43e40775..af2d29359 100644 --- a/rbf/tx_test.go +++ b/rbf/tx_test.go @@ -1315,9 +1315,10 @@ func mustWritePage(tb testing.TB, path string, pgno uint32, buf []byte) { if err != nil { tb.Fatal(err) } - defer f.Close() if _, err := f.WriteAt(buf, int64(pgno)*rbf.PageSize); err != nil { tb.Fatal(err) + } else if err := f.Close(); err != nil { + tb.Fatal(err) } } diff --git a/server/grpc_test.go b/server/grpc_test.go index 51604142d..bf0e97260 100644 --- a/server/grpc_test.go +++ b/server/grpc_test.go @@ -1891,10 +1891,12 @@ func writeTestFile(t *testing.T, filename, content string) string { fname := filepath.Join(t.TempDir(), filename) f, err := os.Create(fname) if err != nil { - panic(filename) + t.Fatal(err) } io.WriteString(f, content) - defer f.Close() + if err := f.Close(); err != nil { + t.Fatal(err) + } return fname }