aboutsummaryrefslogtreecommitdiff
path: root/weed/filesys
diff options
context:
space:
mode:
authorChris Lu <chris.lu@gmail.com>2020-08-30 02:07:14 -0700
committerChris Lu <chris.lu@gmail.com>2020-08-30 02:07:14 -0700
commitf2a8574448d8c0e0233711778dc7bfe1e9154b63 (patch)
tree2191eb4d8586622da36790dd32588f78c1f832eb /weed/filesys
parent99ecf63276b3b33351f316c4d3ea7269d591a3cb (diff)
downloadseaweedfs-f2a8574448d8c0e0233711778dc7bfe1e9154b63.tar.xz
seaweedfs-f2a8574448d8c0e0233711778dc7bfe1e9154b63.zip
filer and mount deletion resolves manifest chunks also
Diffstat (limited to 'weed/filesys')
-rw-r--r--weed/filesys/wfs_deletion.go12
1 files changed, 11 insertions, 1 deletions
diff --git a/weed/filesys/wfs_deletion.go b/weed/filesys/wfs_deletion.go
index 203ebdad1..210ae1ba4 100644
--- a/weed/filesys/wfs_deletion.go
+++ b/weed/filesys/wfs_deletion.go
@@ -18,7 +18,17 @@ func (wfs *WFS) deleteFileChunks(chunks []*filer_pb.FileChunk) {
var fileIds []string
for _, chunk := range chunks {
- fileIds = append(fileIds, chunk.GetFileIdString())
+ if !chunk.IsChunkManifest {
+ fileIds = append(fileIds, chunk.GetFileIdString())
+ continue
+ }
+ dataChunks, manifestResolveErr := filer2.ResolveOneChunkManifest(filer2.LookupFn(wfs), chunk)
+ if manifestResolveErr != nil {
+ glog.V(0).Infof("failed to resolve manifest %s: %v", chunk.FileId, manifestResolveErr)
+ }
+ for _, dChunk := range dataChunks {
+ fileIds = append(fileIds, dChunk.GetFileIdString())
+ }
}
wfs.WithFilerClient(func(client filer_pb.SeaweedFilerClient) error {