<p dir="ltr">Thanks Niel for your helpful answer.</p>
<p dir="ltr">Regarding the locking, indeed that solves my issue. Now I&#39;m wondering how to monitor this. The best I have so far is get the list of RPC binds and the TCP/UDP port in particular, and then run a lsof to find out if it is Gluster.  Should work, but a bit indirect. If someone knows a better way I&#39;d be interested to know.</p>
<p dir="ltr">As for Ganesha, I saw articles explaining that it effectively removes layers, hence why I thought NFS v3 via Ganesha would be faster than native Gluster NFS.  Given your answer I take it there are other moving parts / differences.  Is there a general known guideline on which is best when? E.g. does one handle better small files than the other one or something like that?</p>
<div class="gmail_quote">On 5 Aug 2015 7:06 pm, &quot;Niels de Vos&quot; &lt;<a href="mailto:ndevos@redhat.com">ndevos@redhat.com</a>&gt; wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Wed, Aug 05, 2015 at 04:11:47PM +0100, Thibault Godouet wrote:<br>
&gt; Looking around I get the impression that file locking (NLM) may simply not<br>
&gt; be supported in glusterfs&#39;s built-in NFS server.<br>
<br>
This is actually supported. But note that you can not run a userspace<br>
NLM implementation provided by a NFS-server (Gluster/NFS or NFS-Ganesha)<br>
on a system that acts as an NFS-client. The Linux kernel NFS-client uses<br>
the lockd kernel module, and there can be only one NLM implementation be<br>
registered at rpcbind. Whichever service (nfs-client or nfs-server)<br>
starts first, will be able to register itself, the 2nd one will (mostly<br>
silently) fail.<br>
<br>
&gt; I get the impression that Ganesha is aimed at supporting NFS better, and<br>
&gt; presumably supports locking well, so I should give it a try (If I<br>
&gt; understand well the performance is also likely to be higher, which is a<br>
&gt; nice bonus!)<br>
<br>
NFS-Ganesha offers more features than Gluster/NFS. The performance is<br>
highly dependent on the workload, Gluster/NFS can be faster for many of<br>
them.<br>
<br>
Cheers,<br>
Niels<br>
<br>
<br>
&gt;<br>
&gt; If someone could confirm this that would be useful to make sure I&#39;m going<br>
&gt; in the right direction.<br>
&gt;<br>
&gt; Thanks,<br>
&gt; Thibault.<br>
&gt; On 4 Aug 2015 1:23 pm, &quot;Thibault Godouet&quot; &lt;<a href="mailto:tibo92@godouet.net">tibo92@godouet.net</a>&gt; wrote:<br>
&gt;<br>
&gt; &gt; Hi,<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; I have a cluster of 2 servers running 3.7.3 with replication, and standard<br>
&gt; &gt; NFS (no ganesha).  This in on CentOS 6.<br>
&gt; &gt;<br>
&gt; &gt; I use CTDB with 2 virtual IPs (one for each server in a normal<br>
&gt; &gt; situation) to share the volume over NFS and CIFS (samba).<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; fnctl() file locking doesn&#39;t seem to work when the volume is mounted over<br>
&gt; &gt; NFS.<br>
&gt; &gt;<br>
&gt; &gt; This is apparent with a &#39;svn info&#39; (svn 1.8 if it made any difference) in<br>
&gt; &gt; a local working copy:<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; $ svn info<br>
&gt; &gt; svn: E200033: Another process is blocking the working copy database, or<br>
&gt; &gt; the underlying filesystem does not support file locking; if the working<br>
&gt; &gt; copy is on a network filesystem, make sure file locking has been enabled on<br>
&gt; &gt; the file server<br>
&gt; &gt; svn: E200033: sqlite[S5]: database is locked, executing statement &#39;PRAGMA<br>
&gt; &gt; synchronous=OFF;PRAGMA recursive_triggers=ON;PRAGMA foreign_keys=OFF;PRAGMA<br>
&gt; &gt; locking_mode = NORMAL;&#39;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; a strace shows:<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; $ svn info<br>
&gt; &gt; svn: E200033: Another process is blocking the working copy database, or<br>
&gt; &gt; the underlying filesystem does not support file locking; if the working<br>
&gt; &gt; copy is on a network filesystem, make sure file locking has been enabled on<br>
&gt; &gt; the file server<br>
&gt; &gt; svn: E200033: sqlite[S5]: database is locked, executing statement &#39;PRAGMA<br>
&gt; &gt; synchronous=OFF;PRAGMA recursive_triggers=ON;PRAGMA foreign_keys=OFF;PRAGMA<br>
&gt; &gt; locking_mode = NORMAL;&#39;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; Everything seems to work fine on native Gluster (FUSE) mounts: the same<br>
&gt; &gt; &#39;svn info&#39; works nicely.<br>
&gt; &gt;<br>
&gt; &gt; I can&#39;t really use native mounts due to the performance hit (many small<br>
&gt; &gt; files) and the fact I would need to install the gluster client software on<br>
&gt; &gt; every server.<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; Is fnctl() file locking supported in Gluster NFS mounts?  If so, any idea<br>
&gt; &gt; why it doesn&#39;t work for me?<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; Thanks,<br>
&gt; &gt;<br>
&gt; &gt; Thibault.<br>
&gt; &gt;<br>
<br>
&gt; _______________________________________________<br>
&gt; Gluster-users mailing list<br>
&gt; <a href="mailto:Gluster-users@gluster.org">Gluster-users@gluster.org</a><br>
&gt; <a href="http://www.gluster.org/mailman/listinfo/gluster-users" rel="noreferrer" target="_blank">http://www.gluster.org/mailman/listinfo/gluster-users</a><br>
<br>
</blockquote></div>