<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
To follow up on my earlier post, this is what I found regarding the
kernel FUSE's support for flock() and also MySQL:<br>
<ul>
  <li>2.6.18.8 - flock() doesn't work, MySQL doesn't work<br>
  </li>
  <li>2.6.27.4 - flock() works, MySQL doesn't work</li>
  <li>2.6.28 - flock() works, MySQL doesn't work</li>
</ul>
I performed these tests with the 2.7.4-1.el5.rf version of the FUSE
userspace tools, in case that matters.<br>
<br>
I'm guessing the MySQL issue is the one resolved with a custom patch
last year:
<a class="moz-txt-link-freetext" href="http://www.mail-archive.com/gluster-devel@nongnu.org/msg02947.html">http://www.mail-archive.com/gluster-devel@nongnu.org/msg02947.html</a><br>
<br>
Is there much hope of getting the MySQL FUSE patch into the main kernel?&nbsp;
Is the only necessary change the one to dev.c?<br>
<br>
Thanks,<br>
David<br>
<br>
<br>
David Sickmiller wrote:
<blockquote cite="mid:495E82C8.9000903@careerliaison.com" type="cite">Hi,
  <br>
  <br>
The short version of my question is "What is the minimum kernel FUSE
version needed for flock() support?"&nbsp; If that question is unclear or a
sign that I don't know I'm doing, the long version is below.
  <br>
  <br>
I'm new to GlusterFS, and I'm interested in using 1.4 to setup a
mirrored filesystem on a couple Xen virtual servers.&nbsp; Among other
things, I want to store PHP session files on here, which are locked
using flock(), so I need to pay attention to whether my installation of
FUSE supports this.&nbsp; Complicating this, my Xen hosting provider
recommends using their pre-compiled kernels that have FUSE built-in.&nbsp;
Currently 2.6.18.8, 2.6.27.4, and 2.6.28 are available (for 64-bit).&nbsp;
While not impossible, it's difficult to add custom modules or use
custom kernels.
  <br>
  <br>
I know the Technical FAQ says "Custom FUSE release (2.7.3) doesn't
support flock() calls."&nbsp; I'm not sure I understand what "custom FUSE"
is... is this what you call it when you build the kernel module from
the Sourceforge source instead of the kernel source?&nbsp; I can see that,
prior to Dec 08, the Install_GlusterFS_from_Source wiki page said
things like "Any new kernel (&gt;2.6.25), please use custom fuse only"
and "For kernel version greater than or equal to 2.6.25, the fuse
kernel module won't compile."&nbsp; These two sentences don't make sense to
me.&nbsp; The latest version of that page says nothing about the FUSE
version.
  <br>
  <br>
I looked at fuse-2.7.3glfs10.diff, and there are some obvious
flock-related changes that are not present in the 2.6.18 kernel
driver.&nbsp; However, the 2.6.27 kernel FUSE driver seems to include some
of this flock-related code, so I'm hopeful about it working with no
additional patching.&nbsp; I'm plugging forward and will eventually be able
to do a simple test of my own, but I'm not prepared to do a thorough
test of FUSE compatibility, so I would much appreciate a knowledgeable
opinion about how to get flock() support with the kernel FUSE... or any
general warnings about the road I'm going down.
  <br>
  <br>
Thank you,
  <br>
David
  <br>
  <br>
</blockquote>
</body>
</html>