Problems with building Subversion

apps

#1

Hello,
I’m a complete SVN beginner, but I intend to use it (with file:// repository URLs, i.e. no server) on alexander.dreamhost.com.

I successfully compiled subversion-1.2.1 on alexander.dreamhost.com with the options --without-berkeley-db --with-zlib --with-ssl and then executed ‘make fsfscheck’. All the tests passed, except the following:

FAIL: diff_tests.py 15: repos-repos diff on item deleted from HEAD
FAIL: diff_tests.py 19: diff between two file URLs (issue #1311)
FAIL: diff_tests.py 23: diff a file within a renamed directory
FAIL: diff_tests.py 24: diff a prop change on a dir named explicitly
FAIL: diff_tests.py 25: ensure that diff won’t show keywords
FAIL: diff_tests.py 26: show diffs for binary files with --force
FAIL: externals_tests.py 3: update to lose an external module
FAIL: externals_tests.py 4: update change to an unmodified external module
FAIL: externals_tests.py 5: update changes to a modified external module
FAIL: externals_tests.py 6: update changes under an external module
FAIL: externals_tests.py 7: commit and update additional externals
FAIL: merge_tests.py 1: performing a merge, with mixed results
FAIL: merge_tests.py 7: merge on deleted directory in target
FAIL: merge_tests.py 9: merge operations using PREV revision

I’m not sure where to go from here: some of these seem like fairly serious failures–but I know very little of subversion so far, I’m reading the red-bean book and learning with my own Windows machine. I have posted the config.{log,nice,status} from my build are at http://lotbiniere.org/subversion along with the full tests.log

Can anyone give me any ideas on what might be wrong and how to diagnose it correctly? Has anyone compiled Subversion on Dreamhost and had it pass ALL the tests?

(I’ve also posted on users@subversion.tigris.org; if I get any replies there, I’ll update this forum)

Insert Real Name
insertrealname AT DELETEyahoo.ca


#2

In any event, I’ve now done this test at least 3 times:

rm -rf subversion-1.2.1
tar zxf subversion-1.2.1.tar.gz
cd subversion-1.2.1
./configure --prefix=/home/myhome/opt --without-berkeley-db --with-ssl --with-zlib
make
make fsfscheck

And each time the last make step gives different test failures!

But I had forgotten that the hosting company keeps home directories mounted via NFS–as soon as I did the same procedure on the hosting machine in /usr/local/tmp (local ext3 filesystem), all tests passed O.K.

This is mentioned somewhere in the Subversion FAQ/manual/INSTALL

But this more or less excludes Dreamhost customers from using Subversion repositories within their own home directories. The Subversion FAQ says:

"If you are using the FSFS repository back end, then storing the repository on a modern NFS server (i.e., one that supports locking) should be fine.

Working copies can be stored on NFS (one common scenario is when your home directory is on a NFS server). On Linux NFS servers, due to the volume of renames used internally in Subversion when checking out files, some users have reported that ‘subtree checking’ should be disabled (it’s enabled by default). Please see NFS Howto Server Guide and exports(5) for more information on how to disable subtree checking."

Would disabling sub-tree checking be a problem for the NFS mounted home directories at Dreamhost?

Insert Real Name
insertrealname AT DELETEyahoo.ca


#3

Our file servers are not Linux based. I don’t know how that affects things.

  • Dallas
  • DreamHost Head Honcho/Founder

#4

They are Net App NFS appliances, aren’t they?

The FAQ on the Subversion site with its caution about Linux NFS problems was a false lead, obviously.

Anyway, the situation with my less-than-comprehensive tests at compiling and testing Subversion is this:

a) Subversion compiles correctly with no major warnings I can see.

b) The Makefile test target “fsfscheck” (which executes tests using the Subversion local filesystem API) fails, each time in different tests.

c) The Makefile test target “svncheck” (which executes tests via a Subversion server process in a detached console–yes, I kill the process right after the test runs) also fails randomly, i.e. different tests fail each time.

d) If I build and test the package in a directory below /usr/tmp (i.e. a locally mounted partition), all the tests pass without problems.

So the problem must have something to do with the NFS user filesystem.

The randomness makes the problem a waste of time to discuss on the official Subversion mail list (users@subversion.tigris.org) until I can figure out a way to provide hard information.

Maybe the most helpful thing other dreamhost users/admins (with more programming smarts than me–not hard) could do is to compile/test the same package I have tried: I’ve put the details of the procedure on the Dreamhost Wiki on the Subversion page.

Perhaps they can figure out a way to document the precise problem.

Insert Real Name
insertrealname AT DELETEyahoo.ca


#5

Yeah, Net App. I’ve passed this information along to our techs.

  • Dallas
  • DreamHost Head Honcho/Founder