aboutsummaryrefslogtreecommitdiff
path: root/weed/filesys/file.go
diff options
context:
space:
mode:
authorChris Lu <chris.lu@gmail.com>2021-04-16 02:55:09 -0700
committerChris Lu <chris.lu@gmail.com>2021-04-18 13:06:38 -0700
commitd9a2a7f1c4593c20ec9a92b98b726af7b32baff3 (patch)
tree2ce7aa6c2c28a8af76b75e0342af8f157f0d78fb /weed/filesys/file.go
parent54410ca955cf4078684bca17b4363dc33ef433ed (diff)
downloadseaweedfs-d9a2a7f1c4593c20ec9a92b98b726af7b32baff3.tar.xz
seaweedfs-d9a2a7f1c4593c20ec9a92b98b726af7b32baff3.zip
WIP
no memory issue if some directory is removed, it may have this error $ rm -Rf ~/tmp/m2/s1 rm: fts_read: Device not configured
Diffstat (limited to 'weed/filesys/file.go')
-rw-r--r--weed/filesys/file.go6
1 files changed, 5 insertions, 1 deletions
diff --git a/weed/filesys/file.go b/weed/filesys/file.go
index 2a991d7db..b3e5cc72d 100644
--- a/weed/filesys/file.go
+++ b/weed/filesys/file.go
@@ -18,6 +18,7 @@ import (
const blockSize = 512
var _ = fs.Node(&File{})
+var _ = fs.NodeIdentifier(&File{})
var _ = fs.NodeOpener(&File{})
var _ = fs.NodeFsyncer(&File{})
var _ = fs.NodeSetattrer(&File{})
@@ -40,6 +41,10 @@ func (file *File) fullpath() util.FullPath {
return util.NewFullPath(file.dir.FullPath(), file.Name)
}
+func (file *File) Id() uint64 {
+ return file.fullpath().AsInode()
+}
+
func (file *File) Attr(ctx context.Context, attr *fuse.Attr) (err error) {
glog.V(4).Infof("file Attr %s, open:%v existing:%v", file.fullpath(), file.isOpen, attr)
@@ -253,7 +258,6 @@ func (file *File) Fsync(ctx context.Context, req *fuse.FsyncRequest) error {
func (file *File) Forget() {
t := util.NewFullPath(file.dir.FullPath(), file.Name)
glog.V(4).Infof("Forget file %s", t)
- file.wfs.fsNodeCache.DeleteFsNode(t)
file.wfs.ReleaseHandle(t, 0)
}