diff --git a/clusters/base/apps/nfs-photo/helmrelease.yaml b/clusters/base/apps/nfs-photo/helmrelease.yaml index 828a8c3..3d7025e 100644 --- a/clusters/base/apps/nfs-photo/helmrelease.yaml +++ b/clusters/base/apps/nfs-photo/helmrelease.yaml @@ -44,7 +44,17 @@ spec: tag: release-v2.42.0 args: - "-o" - - "allow_other,use_ino,func.create=ff,category.action=all,category.create=ff,category.search=ff" + # category.search=newest (not ff): getattr on the merged root + # dir has to report one branch's attrs, and with ff that's + # always the first branch (base) regardless of which branch + # actually changed. NFS-Ganesha's directory cache relies on + # that mtime to know when to re-fetch a stale readdir listing + # - with ff, writes to any branch but the first never bump the + # merged root's reported mtime, so Ganesha keeps serving a + # stale listing to NFS clients (confirmed: mergerfs's own + # readdir is always a correct live union - this is purely a + # getattr/mtime-propagation issue up through the NFS cache). + - "allow_other,use_ino,func.create=ff,category.action=all,category.create=ff,category.search=newest" - "/disks/base:/disks/sub1" - "/disks/merged" securityContext: