aboutsummaryrefslogtreecommitdiff
path: root/weed/operation/chunked_file.go
diff options
context:
space:
mode:
authorChris Lu <chris.lu@gmail.com>2018-10-14 00:12:28 -0700
committerChris Lu <chris.lu@gmail.com>2018-10-14 00:12:28 -0700
commitff66269b62ddffe70127bbb9835ae5e7b24e8ce7 (patch)
tree469ac5785c44913288437e2ca765042583aeba28 /weed/operation/chunked_file.go
parent3ddcd870983e68e24ad569127f9a989d7bc986dc (diff)
downloadseaweedfs-ff66269b62ddffe70127bbb9835ae5e7b24e8ce7.tar.xz
seaweedfs-ff66269b62ddffe70127bbb9835ae5e7b24e8ce7.zip
use grpc to replace http APIs for batch volume id lookup and batch delete
1. remove batch volume id lookup http API /vol/lookup 2. remove batch delete http API /delete
Diffstat (limited to 'weed/operation/chunked_file.go')
-rw-r--r--weed/operation/chunked_file.go22
1 files changed, 14 insertions, 8 deletions
diff --git a/weed/operation/chunked_file.go b/weed/operation/chunked_file.go
index 52086514a..69e9b758f 100644
--- a/weed/operation/chunked_file.go
+++ b/weed/operation/chunked_file.go
@@ -10,8 +10,8 @@ import (
"sync"
- "github.com/chrislusf/seaweedfs/weed/glog"
"github.com/chrislusf/seaweedfs/weed/util"
+ "github.com/chrislusf/seaweedfs/weed/glog"
)
var (
@@ -70,16 +70,22 @@ func (cm *ChunkManifest) Marshal() ([]byte, error) {
}
func (cm *ChunkManifest) DeleteChunks(master string) error {
- deleteError := 0
+ var fileIds []string
for _, ci := range cm.Chunks {
- if e := DeleteFile(master, ci.Fid, ""); e != nil {
- deleteError++
- glog.V(0).Infof("Delete %s error: %v, master: %s", ci.Fid, e, master)
- }
+ fileIds = append(fileIds, ci.Fid)
}
- if deleteError > 0 {
- return errors.New("Not all chunks deleted.")
+ results, err := DeleteFiles(master, fileIds)
+ if err != nil {
+ glog.V(0).Infof("delete %+v: %v", fileIds, err)
+ return fmt.Errorf("chunk delete: %v", err)
}
+ for _, result := range results {
+ if result.Error != "" {
+ glog.V(0).Infof("delete file %+v: %v", result.FileId, result.Error)
+ return fmt.Errorf("chunk delete %v: %v", result.FileId, result.Error)
+ }
+ }
+
return nil
}