Hello all,<br><br>A little background info:<br>We have a cluster of fourteen servers (each with 8 cores) running builds for employees at my workplace. We primarily used NFSv3 as a way of providing a single file-system for all workstations and servers to share files. Each build is run in a separate directory so cache coherence shouldn&#39;t be an issue. When the cluster is full we noticed lots of jobs failing when attempting to copy or move results from one pass of the build to the next pass (once again, a &#39;job&#39; is run on a single machine from beginning to end so coherency shouldn&#39;t be an issue&#39;). In most cases the error was along the lines of &#39;File doesn&#39;t exist&#39;, but if you were to manually check its presence it appeared fine and with all the correct permissions. Having tried NFSv4 (and some other file-systems I won&#39;t name) and finding the same results we decided to implement a coherent clustering file-system that would also provide more scalability.<br>
<br>Setup and problem:<br>After much trial and error I have managed to setup a small Lustre system consisting of one MDS and one OSS. All machines involved are CentOS 5 based and run the 2.6.18-164.11.1.el5_lustre.1.8.2 kernel. This setup appears to work correctly but now fails in a way that it didn&#39;t before.<br>
<br>One of our builds that uses autoconf started failing with the error: <br>&quot;Can&#39;t locate auto/Autom4te/XFile/<a href="http://msg.al">msg.al</a> in @INC&quot;<br><br>After having a look at some of the problems encountered on OpenBSD with automake and a lockless NFS system a workaround was suggested. By adding the line &#39;use Autom4te::Channels qw(msg);&#39; and &#39;use Automake::Channels qw(msg);&#39; to the respective XFile.pm autoconf becomes more verbose and produces:<br>
&quot;autom4te: cannot lock autom4te.cache/requests with mode 2: Function not implemented&quot;<br><br>It also no longer fails and continues to build the configure file. But now we come to the interesting part - The script runs ./configure directly after running autoconf and this always fails the first time with the message<br>
./configure: /bin/sh: bad interpreter: Text file busy<br><br>If you manually re-run the script again it works correctly! I have tried flock and localflocks on the lustre mount but this doesn&#39;t appear to make any difference. After googling around I can&#39;t seem to find anyone who has had a similar problem.<br>
<br>Has anyone experienced this before or have any clues as to how I can go about debugging this?<br><br>Thanks,<br>---------<br>Ashley Nicholls<br>Open all hailing frequencies and broadcast in all known languages. Including Welsh.<br>
- Arnold J. Rimmer<br>In my many years I have come to a conclusion that one useless man is a shame, two is a law firm, and three or more is a congress.<br>- John Adams<br>