diff options
| author | Chris Lu <chris.lu@gmail.com> | 2021-06-05 02:23:07 -0700 |
|---|---|---|
| committer | Chris Lu <chris.lu@gmail.com> | 2021-06-05 02:23:07 -0700 |
| commit | fadc1febdb1889223b5b81d5d63397a3b70127ce (patch) | |
| tree | f0f3bf306cf12f1033b1601c27c02b9e5c004aec | |
| parent | ab606dec2aa07f3092d4d8ab5764a6641d914831 (diff) | |
| download | seaweedfs-fadc1febdb1889223b5b81d5d63397a3b70127ce.tar.xz seaweedfs-fadc1febdb1889223b5b81d5d63397a3b70127ce.zip | |
FUSE: invalidate FUSE cached entries
fix https://github.com/chrislusf/seaweedfs/issues/2108
| -rw-r--r-- | weed/filesys/meta_cache/meta_cache_subscribe.go | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/weed/filesys/meta_cache/meta_cache_subscribe.go b/weed/filesys/meta_cache/meta_cache_subscribe.go index f9973f436..675ef4077 100644 --- a/weed/filesys/meta_cache/meta_cache_subscribe.go +++ b/weed/filesys/meta_cache/meta_cache_subscribe.go @@ -40,9 +40,13 @@ func SubscribeMetaEvents(mc *MetaCache, selfSignature int32, client filer_pb.Fil newEntry = filer.FromPbEntry(dir, message.NewEntry) } err := mc.AtomicUpdateEntryFromFiler(context.Background(), oldPath, newEntry) - if err == nil && message.OldEntry != nil && message.NewEntry != nil { - key := util.NewFullPath(dir, message.NewEntry.Name) - mc.invalidateFunc(key) + if err == nil && message.OldEntry != nil { + oldKey := util.NewFullPath(resp.Directory, message.OldEntry.Name) + mc.invalidateFunc(oldKey) + if message.NewEntry != nil { + key := util.NewFullPath(dir, message.NewEntry.Name) + mc.invalidateFunc(key) + } } return err |
