diff options
| author | Chris Lu <chris.lu@gmail.com> | 2020-08-30 02:07:14 -0700 |
|---|---|---|
| committer | Chris Lu <chris.lu@gmail.com> | 2020-08-30 02:07:14 -0700 |
| commit | f2a8574448d8c0e0233711778dc7bfe1e9154b63 (patch) | |
| tree | 2191eb4d8586622da36790dd32588f78c1f832eb /weed/filesys | |
| parent | 99ecf63276b3b33351f316c4d3ea7269d591a3cb (diff) | |
| download | seaweedfs-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.go | 12 |
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 { |
