views:

279

answers:

2

Today our virtual W2003 server storing our SVN repository (too) became very-very busy. It turned out that it had only 88KB free space left on the C: drive. Not that good. Due to access problems, the only way we could reboot it by killing the busy processes from task manager (McAffee, SqlServer, services.exe) and then gracefully reboot. We freed up some space, the machine is happy again, but our SVN repository is not available anymore.

If I connect from the client, it gives the message "No repository found in 'svn://[mymachine]/repos/[myapp]' " However, from the server I can see the content using "svnlook tree [rootFolder]" command.

If I navigate to the root folder using Windows Explorer, the following folders are empty (I have no clue if that is normal):

  • [rootFolder]/trunk
  • [rootFolder]/tags
  • [rootFolder]/branches

However, the [rootFolder]/db contains many files with the corresponding revision name. The size of the head should be around 600MB but we have also a number of branches. The total size of the [rootFolder] is now ~600MB. Did we loose the branches? Tomorrow we will also know if our backup system worked well. Anyway, does anyone has any idea?

[Update after solution found]

Thanx for all who submitted answers, they were very useful in resolving the trouble. During the crash, the SVN service got corrupted, while the data remained intact. Reinstallation of the service has solved the problem.

+3  A: 

On the repository box, try a repair and a verify.

svnadmin repair [rootFolder]
svnadmin verify [rootFolder]

If that doesn't help, hopefully your backup works.

Don't worry too much about the size being about the size of the head. Branches are like symlinks and only store the diffs which are often fairly small.

Rob Prouse
svnadmin repair does not exist. The command is svnadmin recover. (And the verify command on fsfs is a placeholder before 1.5 or 1.4. Later versions added more verifications)
Bert Huijben
+3  A: 

Sounds like you just need to restart svnserve.

If you followed the Subversion Book in setting up a service with sc:

net start [service]

net start subversion

Or, directly: (theoretically...I used sc and net, myself)

svnserve.exe --service -r [rootFolder]
Jonathan Lonowski