diff options
| author | Chris Lu <chris.lu@gmail.com> | 2021-04-16 02:55:09 -0700 |
|---|---|---|
| committer | Chris Lu <chris.lu@gmail.com> | 2021-04-18 13:06:38 -0700 |
| commit | d9a2a7f1c4593c20ec9a92b98b726af7b32baff3 (patch) | |
| tree | 2ce7aa6c2c28a8af76b75e0342af8f157f0d78fb /weed/filesys/file.go | |
| parent | 54410ca955cf4078684bca17b4363dc33ef433ed (diff) | |
| download | seaweedfs-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.go | 6 |
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) } |
