diff options
| author | Chris Lu <chris.lu@gmail.com> | 2021-04-15 01:51:10 -0700 |
|---|---|---|
| committer | Chris Lu <chris.lu@gmail.com> | 2021-04-15 01:51:10 -0700 |
| commit | 217e0f906623a6d2f25f4dce7280d16bf3786a72 (patch) | |
| tree | 52602a0d3f130130044808ba15ae7ad7d7b21032 | |
| parent | 3e669e6d7b57387ea3b77ab2af9edc3f80c4dae2 (diff) | |
| download | seaweedfs-217e0f906623a6d2f25f4dce7280d16bf3786a72.tar.xz seaweedfs-217e0f906623a6d2f25f4dce7280d16bf3786a72.zip | |
mount: remove folder recursively
| -rw-r--r-- | weed/filesys/dir.go | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/weed/filesys/dir.go b/weed/filesys/dir.go index bf192f384..ed8ffff61 100644 --- a/weed/filesys/dir.go +++ b/weed/filesys/dir.go @@ -436,18 +436,19 @@ func (dir *Dir) removeOneFile(req *fuse.RemoveRequest) error { func (dir *Dir) removeFolder(req *fuse.RemoveRequest) error { + dirFullPath := dir.FullPath() glog.V(3).Infof("remove directory entry: %v", req) ignoreRecursiveErr := true // ignore recursion error since the OS should manage it - err := filer_pb.Remove(dir.wfs, dir.FullPath(), req.Name, true, false, ignoreRecursiveErr, false, []int32{dir.wfs.signature}) + err := filer_pb.Remove(dir.wfs, dirFullPath, req.Name, true, true, ignoreRecursiveErr, false, []int32{dir.wfs.signature}) if err != nil { - glog.V(0).Infof("remove %s/%s: %v", dir.FullPath(), req.Name, err) + glog.V(0).Infof("remove %s/%s: %v", dirFullPath, req.Name, err) if strings.Contains(err.Error(), "non-empty") { return fuse.EEXIST } return fuse.ENOENT } - t := util.NewFullPath(dir.FullPath(), req.Name) + t := util.NewFullPath(dirFullPath, req.Name) dir.wfs.metaCache.DeleteEntry(context.Background(), t) dir.wfs.fsNodeCache.DeleteFsNode(t) |
