Change in ...nfs-ganesha[next]: MDCACHE - add a name-cookie mapping for whence-is-name
Daniel Gryniewicz has uploaded this change for review. ( https://review.gerrithub.io/c/ffilz/nfs-ganesha/+/458683 Change subject: MDCACHE - add a name-cookie mapping for whence-is-name ...................................................................... MDCACHE - add a name-cookie mapping for whence-is-name Restarting a readdir internally because the chunk containing the requested cookie has been reaped cause extreme performance problems on large directories. It can cause a hang long enough for the client to time out. To avoid this, add a name-cookie map. This map contains the last cookie we sent to a client, so that when that cookie is sent back by the client, we can look up the name even if the chunk containing that dirent has been reaped. This map is in an LRU, with a hard cap (Dirmap_HWMark), and it's cleaned up in the background if entries are older than 60 seconds. Notet that we also save the second cookie in the set, since the linux client seems to request that one approximately 1/3 of the time. Change-Id: I09d1ef6012d5feca81c7418634cba02e3ab08bc5 Signed-off-by: Daniel Gryniewicz <dang@redhat.com> --- M src/FSAL/Stackable_FSALs/FSAL_MDCACHE/mdcache_ext.h M src/FSAL/Stackable_FSALs/FSAL_MDCACHE/mdcache_helpers.c M src/FSAL/Stackable_FSALs/FSAL_MDCACHE/mdcache_int.h M src/FSAL/Stackable_FSALs/FSAL_MDCACHE/mdcache_lru.c M src/FSAL/Stackable_FSALs/FSAL_MDCACHE/mdcache_lru.h M src/FSAL/Stackable_FSALs/FSAL_MDCACHE/mdcache_main.c M src/FSAL/Stackable_FSALs/FSAL_MDCACHE/mdcache_read_conf.c M src/doc/man/ganesha-cache-config.rst 8 files changed, 344 insertions(+), 61 deletions(-) git pull ssh://review.gerrithub.io:29418/ffilz/nfs-ganesha refs/changes/83/458683/1 -- To view, visit https://review.gerrithub.io/c/ffilz/nfs-ganesha/+/458683 To unsubscribe, or for help writing mail filters, visit https://review.gerrithub.io/settings Gerrit-Project: ffilz/nfs-ganesha Gerrit-Branch: next Gerrit-Change-Id: I09d1ef6012d5feca81c7418634cba02e3ab08bc5 Gerrit-Change-Number: 458683 Gerrit-PatchSet: 1 Gerrit-Owner: Daniel Gryniewicz <dang@redhat.com> Gerrit-MessageType: newchange
participants (1)
-
Daniel Gryniewicz (GerritHub)