Skip to content

Commit dcde538

Browse files
derekbitmergify[bot]
authored andcommitted
fix: fix validation errors
Signed-off-by: Derek Su <[email protected]>
1 parent 0d2ec24 commit dcde538

12 files changed

+315
-71
lines changed

pkg/backingimage/backingimage.go

+3-1
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,9 @@ func loadBackingImageLocation(backingimage *BackingImage, disk enginetypes.DiffD
8080
}
8181

8282
func (bi *BackingImage) Close() {
83-
bi.Disk.Close()
83+
if err := bi.Disk.Close(); err != nil {
84+
logrus.WithError(err).Errorf("Failed to close backing image %s", bi.Path)
85+
}
8486
}
8587

8688
func (bi *BackingImage) ReadAt(buf []byte, offset int64) (int, error) {

pkg/client/data_source_client.go

+32-6
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ import (
99
"os"
1010
"strconv"
1111

12+
"github.com/sirupsen/logrus"
13+
1214
"github.com/longhorn/backing-image-manager/api"
1315
"github.com/longhorn/backing-image-manager/pkg/util"
1416
"github.com/pkg/errors"
@@ -31,7 +33,11 @@ func (client *DataSourceClient) Get() (*api.DataSourceInfo, error) {
3133
if err != nil {
3234
return nil, fmt.Errorf("get failed, err: %s", err)
3335
}
34-
defer resp.Body.Close()
36+
defer func() {
37+
if errClose := resp.Body.Close(); errClose != nil {
38+
logrus.WithError(errClose).Error("Failed to close response body")
39+
}
40+
}()
3541

3642
bodyContent, err := io.ReadAll(resp.Body)
3743
if err != nil {
@@ -69,7 +75,11 @@ func (client *DataSourceClient) Transfer() error {
6975
if err != nil {
7076
return fmt.Errorf("transfer failed, err: %s", err)
7177
}
72-
defer resp.Body.Close()
78+
defer func() {
79+
if errClose := resp.Body.Close(); errClose != nil {
80+
logrus.WithError(errClose).Error("Failed to close response body")
81+
}
82+
}()
7383

7484
bodyContent, err := io.ReadAll(resp.Body)
7585
if err != nil {
@@ -93,8 +103,16 @@ func (client *DataSourceClient) Upload(filePath string) error {
93103
r, w := io.Pipe()
94104
m := multipart.NewWriter(w)
95105
go func() {
96-
defer w.Close()
97-
defer m.Close()
106+
defer func() {
107+
if errClose := w.Close(); errClose != nil {
108+
logrus.WithError(errClose).Error("Failed to close writer")
109+
}
110+
}()
111+
defer func() {
112+
if errClose := m.Close(); errClose != nil {
113+
logrus.WithError(errClose).Error("Failed to close multipart writer")
114+
}
115+
}()
98116
part, err := m.CreateFormFile("chunk", "blob")
99117
if err != nil {
100118
return
@@ -103,7 +121,11 @@ func (client *DataSourceClient) Upload(filePath string) error {
103121
if err != nil {
104122
return
105123
}
106-
defer file.Close()
124+
defer func() {
125+
if errClose := file.Close(); errClose != nil {
126+
logrus.WithError(errClose).Error("Failed to close file")
127+
}
128+
}()
107129
if _, err = io.Copy(part, file); err != nil {
108130
return
109131
}
@@ -125,7 +147,11 @@ func (client *DataSourceClient) Upload(filePath string) error {
125147
if err != nil {
126148
return fmt.Errorf("upload failed, err: %s", err)
127149
}
128-
defer resp.Body.Close()
150+
defer func() {
151+
if errClose := resp.Body.Close(); errClose != nil {
152+
logrus.WithError(errClose).Error("Failed to close response body")
153+
}
154+
}()
129155

130156
bodyContent, err := io.ReadAll(resp.Body)
131157
if err != nil {

pkg/client/manager_client.go

+52-10
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ import (
44
"fmt"
55

66
rpc "github.com/longhorn/types/pkg/generated/bimrpc"
7+
8+
"github.com/sirupsen/logrus"
79
"golang.org/x/net/context"
810
"google.golang.org/grpc"
911
"google.golang.org/grpc/credentials/insecure"
@@ -34,7 +36,11 @@ func (cli *BackingImageManagerClient) Sync(name, uuid, checksum, fromAddress str
3436
if err != nil {
3537
return nil, fmt.Errorf("cannot connect backing image manager service to %v: %v", cli.Address, err)
3638
}
37-
defer conn.Close()
39+
defer func() {
40+
if errClose := conn.Close(); errClose != nil {
41+
logrus.WithError(errClose).Error("Failed to close backing image manager service connection")
42+
}
43+
}()
3844

3945
client := rpc.NewBackingImageManagerServiceClient(conn)
4046
ctx, cancel := context.WithTimeout(context.Background(), types.GRPCServiceTimeout)
@@ -64,7 +70,11 @@ func (cli *BackingImageManagerClient) Send(name, uuid, toAddress string) error {
6470
if err != nil {
6571
return fmt.Errorf("cannot connect backing image manager service to %v: %v", cli.Address, err)
6672
}
67-
defer conn.Close()
73+
defer func() {
74+
if errClose := conn.Close(); errClose != nil {
75+
logrus.WithError(errClose).Error("Failed to close backing image manager service connection")
76+
}
77+
}()
6878

6979
client := rpc.NewBackingImageManagerServiceClient(conn)
7080
ctx, cancel := context.WithTimeout(context.Background(), types.GRPCServiceTimeout)
@@ -87,7 +97,11 @@ func (cli *BackingImageManagerClient) Delete(name, uuid string) error {
8797
if err != nil {
8898
return fmt.Errorf("cannot connect backing image manager service to %v: %v", cli.Address, err)
8999
}
90-
defer conn.Close()
100+
defer func() {
101+
if errClose := conn.Close(); errClose != nil {
102+
logrus.WithError(errClose).Error("Failed to close backing image manager service connection")
103+
}
104+
}()
91105

92106
client := rpc.NewBackingImageManagerServiceClient(conn)
93107
ctx, cancel := context.WithTimeout(context.Background(), types.GRPCServiceTimeout)
@@ -109,7 +123,11 @@ func (cli *BackingImageManagerClient) Get(name, uuid string) (*api.BackingImage,
109123
if err != nil {
110124
return nil, fmt.Errorf("cannot connect backing image manager service to %v: %v", cli.Address, err)
111125
}
112-
defer conn.Close()
126+
defer func() {
127+
if errClose := conn.Close(); errClose != nil {
128+
logrus.WithError(errClose).Error("Failed to close backing image manager service connection")
129+
}
130+
}()
113131

114132
client := rpc.NewBackingImageManagerServiceClient(conn)
115133
ctx, cancel := context.WithTimeout(context.Background(), types.GRPCServiceTimeout)
@@ -130,7 +148,11 @@ func (cli *BackingImageManagerClient) List() (map[string]*api.BackingImage, erro
130148
if err != nil {
131149
return nil, fmt.Errorf("cannot connect backing image manager service to %v: %v", cli.Address, err)
132150
}
133-
defer conn.Close()
151+
defer func() {
152+
if errClose := conn.Close(); errClose != nil {
153+
logrus.WithError(errClose).Error("Failed to close backing image manager service connection")
154+
}
155+
}()
134156

135157
client := rpc.NewBackingImageManagerServiceClient(conn)
136158
ctx, cancel := context.WithTimeout(context.Background(), types.GRPCServiceTimeout)
@@ -152,7 +174,11 @@ func (cli *BackingImageManagerClient) Fetch(name, uuid, checksum, dataSourceAddr
152174
if err != nil {
153175
return nil, fmt.Errorf("cannot connect backing image manager service to %v: %v", cli.Address, err)
154176
}
155-
defer conn.Close()
177+
defer func() {
178+
if errClose := conn.Close(); errClose != nil {
179+
logrus.WithError(errClose).Error("Failed to close backing image manager service connection")
180+
}
181+
}()
156182

157183
client := rpc.NewBackingImageManagerServiceClient(conn)
158184
ctx, cancel := context.WithTimeout(context.Background(), types.GRPCServiceTimeout)
@@ -182,7 +208,11 @@ func (cli *BackingImageManagerClient) PrepareDownload(name, uuid string) (string
182208
if err != nil {
183209
return "", "", fmt.Errorf("cannot connect backing image manager service to %v: %v", cli.Address, err)
184210
}
185-
defer conn.Close()
211+
defer func() {
212+
if errClose := conn.Close(); errClose != nil {
213+
logrus.WithError(errClose).Error("Failed to close backing image manager service connection")
214+
}
215+
}()
186216

187217
client := rpc.NewBackingImageManagerServiceClient(conn)
188218
ctx, cancel := context.WithTimeout(context.Background(), types.GRPCServiceTimeout)
@@ -203,7 +233,11 @@ func (cli *BackingImageManagerClient) VersionGet() (*meta.VersionOutput, error)
203233
if err != nil {
204234
return nil, fmt.Errorf("cannot connect backing image manager service to %v: %v", cli.Address, err)
205235
}
206-
defer conn.Close()
236+
defer func() {
237+
if errClose := conn.Close(); errClose != nil {
238+
logrus.WithError(errClose).Error("Failed to close backing image manager service connection")
239+
}
240+
}()
207241

208242
client := rpc.NewBackingImageManagerServiceClient(conn)
209243
ctx, cancel := context.WithTimeout(context.Background(), types.GRPCServiceTimeout)
@@ -249,7 +283,11 @@ func (cli *BackingImageManagerClient) BackupCreate(name, uuid, checksum, backupT
249283
if err != nil {
250284
return fmt.Errorf("failed to connect backing image manager service to %v: %v", cli.Address, err)
251285
}
252-
defer conn.Close()
286+
defer func() {
287+
if errClose := conn.Close(); errClose != nil {
288+
logrus.WithError(errClose).Error("Failed to close backing image manager service connection")
289+
}
290+
}()
253291

254292
client := rpc.NewBackingImageManagerServiceClient(conn)
255293
ctx, cancel := context.WithTimeout(context.Background(), types.GRPCServiceTimeout)
@@ -283,7 +321,11 @@ func (cli *BackingImageManagerClient) BackupStatus(name string) (*api.BackupStat
283321
if err != nil {
284322
return nil, fmt.Errorf("failed to connect backing image manager service to %v: %v", cli.Address, err)
285323
}
286-
defer conn.Close()
324+
defer func() {
325+
if errClose := conn.Close(); errClose != nil {
326+
logrus.WithError(errClose).Error("Failed to close backing image manager service connection")
327+
}
328+
}()
287329

288330
client := rpc.NewBackingImageManagerServiceClient(conn)
289331
ctx, cancel := context.WithTimeout(context.Background(), types.GRPCServiceTimeout)

0 commit comments

Comments
 (0)