diff options
| -rw-r--r-- | weed/filesys/dir.go | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/weed/filesys/dir.go b/weed/filesys/dir.go index 7c0a2b0e2..d29bc9b90 100644 --- a/weed/filesys/dir.go +++ b/weed/filesys/dir.go @@ -364,6 +364,12 @@ func (dir *Dir) removeOneFile(req *fuse.RemoveRequest) error { dir.wfs.metaCache.DeleteEntry(context.Background(), filePath) dir.wfs.fsNodeCache.DeleteFsNode(filePath) + // remove current file handle if any + dir.wfs.handlesLock.Lock() + defer dir.wfs.handlesLock.Unlock() + inodeId := util.NewFullPath(dir.FullPath(), req.Name).AsInode() + delete(dir.wfs.handles, inodeId) + // delete the chunks last if isDeleteData { dir.wfs.deleteFileChunks(entry.Chunks) |
