Sunday, 10 March 2013

Subversion errors and inodes

Here's a couple of things I ran into today that you may find useful. I've been running some I/O comparisons with SVN servers, tuning mod_svn, and basically comparing various physical disk configurations to EC2 based solutions, where the I/O throughput you get largely depends on the phases of the moon. Anyway, in the process of hastily setting up various Apache servers here and there, I spotted this error when trying to checkout from an SVN repo on the command line:

Subversion error: Repository moved permanently to ********* please relocate

The location the repo had moved to was invariably the location I'd already specified, and the odd thing was I didn't get this error when viewing the repo in a browser. I'd confused myself by having a complicated LDAP-backed authentication scheme in the way, but the problem basically boiled down to this:

When you set up your virtual host, your DocumentRoot and your SVNParentPath can't be the same, otherwise Apache gets confused with how to serve them, although, surprisingly, not to a web browser.

The other little snag I came across while doing all sorts of multiple checkouts of massive repos to measure I/O was this silly little annoyance:

svn: Can't open file: No space left on device

Which was annoying because I'd leave the checkout running for ages and come back to find it hanging on this. Of course, it's checking out to a massive logical volume on a massive disk with plenty of free space. So where's the problem?

Well, in a blast from the past, it's simply a matter of running out of inodes. Not something you come across every day, so relatively easy to miss (especially when you're working on a Sunday. Why are you doing that anyway?). A simple df -i will show you what's what. How you give yourself a file system with more inodes is up to you of course.

No comments:

Post a Comment