From fe50224ea0cdd665617a1e0c5dd434c874de0790 Mon Sep 17 00:00:00 2001 From: Chris Lu Date: Sat, 5 Jan 2019 15:21:56 -0800 Subject: [PATCH] refactoring --- weed/filesys/file.go | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/weed/filesys/file.go b/weed/filesys/file.go index e27cdd42e..6c96ba4ed 100644 --- a/weed/filesys/file.go +++ b/weed/filesys/file.go @@ -139,8 +139,7 @@ func (file *File) maybeLoadAttributes(ctx context.Context) error { item := file.wfs.listDirectoryEntriesCache.Get(file.fullpath()) if item != nil && !item.Expired() { entry := item.Value().(*filer_pb.Entry) - file.entry = entry - file.entryViewCache = nil + file.setEntry(entry) // glog.V(1).Infof("file attr read cached %v attributes", file.Name) } else { err := file.wfs.withFilerClient(func(client filer_pb.SeaweedFilerClient) error { @@ -156,8 +155,7 @@ func (file *File) maybeLoadAttributes(ctx context.Context) error { return fuse.ENOENT } - file.entry = resp.Entry - file.entryViewCache = nil + file.setEntry(resp.Entry) glog.V(3).Infof("file attr %v %+v: %d", file.fullpath(), file.entry.Attributes, filer2.TotalSize(file.entry.Chunks)) @@ -188,3 +186,8 @@ func (file *File) addChunks(chunks []*filer_pb.FileChunk) { } file.entryViewCache = filer2.NonOverlappingVisibleIntervals(file.entry.Chunks) } + +func (file *File) setEntry(entry *filer_pb.Entry) { + file.entry = entry + file.entryViewCache = filer2.NonOverlappingVisibleIntervals(file.entry.Chunks) +}