aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lu <chris.lu@gmail.com>2020-12-09 01:34:24 -0800
committerChris Lu <chris.lu@gmail.com>2020-12-09 01:34:24 -0800
commita9c619c270927456787a638856e315289f9005b7 (patch)
treee4cc4e835c9bbf5cedb7c68ab1cda35567cb70de
parent4211601eab263ac3b8ce46570cd0467e7b35838f (diff)
downloadseaweedfs-a9c619c270927456787a638856e315289f9005b7.tar.xz
seaweedfs-a9c619c270927456787a638856e315289f9005b7.zip
added error handling for saving
-rw-r--r--weed/filer/read_write.go12
1 files changed, 11 insertions, 1 deletions
diff --git a/weed/filer/read_write.go b/weed/filer/read_write.go
index 8561d848b..286b073bf 100644
--- a/weed/filer/read_write.go
+++ b/weed/filer/read_write.go
@@ -6,6 +6,7 @@ import (
"github.com/chrislusf/seaweedfs/weed/pb/filer_pb"
"github.com/chrislusf/seaweedfs/weed/util"
"github.com/chrislusf/seaweedfs/weed/wdclient"
+ "io/ioutil"
"math"
"net/http"
)
@@ -56,7 +57,16 @@ func SaveAs(host string, port int, dir, name string, contentType string, byteBuf
if err != nil {
return err
}
- util.CloseResponse(resp)
+ defer util.CloseResponse(resp)
+
+ b, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return err
+ }
+
+ if resp.StatusCode >= 400 {
+ return fmt.Errorf("%s: %s %v", target, resp.Status, string(b))
+ }
return nil