mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2024-01-19 02:48:24 +00:00
Merge pull request #686 from qszxnp/filer2_dir_cache_bugfix
bugfix:delete Directory cache when filer2 delete Directory
This commit is contained in:
commit
9e974f6a1b
|
@ -139,6 +139,7 @@ func (f *Filer) DeleteEntryMetaAndData(p FullPath, shouldDeleteChunks bool) (err
|
||||||
if len(entries) > 0 {
|
if len(entries) > 0 {
|
||||||
return fmt.Errorf("folder %s is not empty", p)
|
return fmt.Errorf("folder %s is not empty", p)
|
||||||
}
|
}
|
||||||
|
f.cacheDelDirectory(string(p))
|
||||||
}
|
}
|
||||||
|
|
||||||
if shouldDeleteChunks {
|
if shouldDeleteChunks {
|
||||||
|
@ -155,6 +156,14 @@ func (f *Filer) ListDirectoryEntries(p FullPath, startFileName string, inclusive
|
||||||
return f.store.ListDirectoryEntries(p, startFileName, inclusive, limit)
|
return f.store.ListDirectoryEntries(p, startFileName, inclusive, limit)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (f *Filer) cacheDelDirectory(dirpath string) {
|
||||||
|
if f.directoryCache == nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
f.directoryCache.Delete(dirpath)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func (f *Filer) cacheGetDirectory(dirpath string) *Entry {
|
func (f *Filer) cacheGetDirectory(dirpath string) *Entry {
|
||||||
if f.directoryCache == nil {
|
if f.directoryCache == nil {
|
||||||
return nil
|
return nil
|
||||||
|
|
Loading…
Reference in a new issue