<div dir="ltr"><div>Hello everyone,</div><div><br></div><div>here I will briefly summarize an export update problem one will encounter</div><div>when using nfs-ganesha.</div><div><br></div><div>While working on a driver that relies on nfs-ganesha I have discovered that it</div><div>is apparently impossible to provide interruption-free export updates. As of version</div><div>2.3 which I am working with it is possible to add an export or to remove an</div><div>export without restarting the daemon, but it is not possible to modify an existing</div><div>export. So in other words if you create an export you should define all clients</div><div>before you actually export and use it, otherwise it will be impossible to change</div><div>rules on the fly. One can come up with at least two ways to work around</div><div>this issue: either by removing, updating and re-adding an export, or by creating multiple</div><div>exports (one per client) for an exported resource. Both ways have associated</div><div>problems: the first one interrupts clients already working with an export,</div><div>which might be a big problem if a client is doing heavy I/O, the second one</div><div>creates multiple exports associated with a single resource, which can easily lead</div><div>to confusion. The second approach is used in current manila's ganesha helper[1].</div><div>This issue seems to be raised now and then with nfs-ganesha team, most recently in</div><div>[2], but apparently it will not  be addressed in the nearest future.</div><div><br></div><div>With kind regards,</div><div>Alexey.</div><div><br></div><div>[1]: <a href="https://github.com/openstack/manila/blob/master/manila/share/drivers/ganesha/__init__.py">https://github.com/openstack/manila/blob/master/manila/share/drivers/ganesha/__init__.py</a></div><div>[2]: <a href="https://sourceforge.net/p/nfs-ganesha/mailman/message/35173839">https://sourceforge.net/p/nfs-ganesha/mailman/message/35173839</a></div></div>