From aac11fb832627cbf73a3a7448ec13467ebcc6211 Mon Sep 17 00:00:00 2001 From: Chris Lu Date: Thu, 3 Jan 2019 22:21:39 -0800 Subject: [PATCH] reduce directory list cache usage --- weed/filesys/dir.go | 4 ++-- weed/filesys/file.go | 2 +- weed/filesys/wfs.go | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/weed/filesys/dir.go b/weed/filesys/dir.go index 821bcfb9f..f8b9a049c 100644 --- a/weed/filesys/dir.go +++ b/weed/filesys/dir.go @@ -77,7 +77,7 @@ func (dir *Dir) Attr(context context.Context, attr *fuse.Attr) error { dir.attributes = resp.Entry.Attributes } - dir.wfs.listDirectoryEntriesCache.Set(dir.Path, resp.Entry, dir.wfs.option.EntryCacheTtl) + // dir.wfs.listDirectoryEntriesCache.Set(dir.Path, resp.Entry, dir.wfs.option.EntryCacheTtl) return nil }) @@ -215,7 +215,7 @@ func (dir *Dir) Lookup(ctx context.Context, req *fuse.LookupRequest, resp *fuse. entry = resp.Entry - dir.wfs.listDirectoryEntriesCache.Set(path.Join(dir.Path, entry.Name), entry, dir.wfs.option.EntryCacheTtl) + // dir.wfs.listDirectoryEntriesCache.Set(path.Join(dir.Path, entry.Name), entry, dir.wfs.option.EntryCacheTtl) return nil }) diff --git a/weed/filesys/file.go b/weed/filesys/file.go index a2ffa0547..ce9ef3a80 100644 --- a/weed/filesys/file.go +++ b/weed/filesys/file.go @@ -161,7 +161,7 @@ func (file *File) maybeLoadAttributes(ctx context.Context) error { glog.V(3).Infof("file attr %v %+v: %d", file.fullpath(), file.entry.Attributes, filer2.TotalSize(file.entry.Chunks)) - file.wfs.listDirectoryEntriesCache.Set(file.fullpath(), file.entry, file.wfs.option.EntryCacheTtl) + // file.wfs.listDirectoryEntriesCache.Set(file.fullpath(), file.entry, file.wfs.option.EntryCacheTtl) return nil }) diff --git a/weed/filesys/wfs.go b/weed/filesys/wfs.go index 858846217..3f6202a4f 100644 --- a/weed/filesys/wfs.go +++ b/weed/filesys/wfs.go @@ -58,7 +58,7 @@ type statsCache struct { func NewSeaweedFileSystem(option *Option) *WFS { wfs := &WFS{ option: option, - listDirectoryEntriesCache: ccache.New(ccache.Configure().MaxSize(int64(option.DirListingLimit) + 200).ItemsToPrune(100)), + listDirectoryEntriesCache: ccache.New(ccache.Configure().MaxSize(1024*8).ItemsToPrune(100)), pathToHandleIndex: make(map[string]int), bufPool: sync.Pool{ New: func() interface{} {