I had the same error, but due to a slightly different permissions issue.
I am running CentOS 4.5 and I upgraded from 1.4.4 => 1.5.2 so I could have the nice 1.5x benefits of merge tracking. First, I ran
Code:
rsync -vaz /var/svn/repos/MYREPO /root/svn_repo_temp_backup/
in order to make sure I had a backup with correct file permissions from the -vaz since I know permissions are critical to get right. Next I downloaded the i386 RPMs directly from the Collabnet site and ran for the 1.5.2 client, then the server after. I then checked the version number on the client to confirm it updated. Then I rebooted the svn daemon with
Code:
/etc/init.d/collabnet_subversion restart
, which worked nicely. I connected to my HTTP svn URL to verify the server version was upgraded too. Finally I ran the recommended See http://subversion.tigris.org/svn_1.5...repos-upgrades for more detail.
Anywhoo, after all that crap suddenly I couldn't commit back to my repo. I was getting the exact same error as above.
Turns out the problem was file permissions, and it was probably my fault for doing the upgrade the way I did (although I'm not sure what would have been better).
The problem was that the new SVN server RPM install process is sort of dumb about how it creates the user named csvn (you can verify this new user by running
Code:
grep csvn /etc/passwd
after you do the rpm install). When I installed the 1.4.2 server a while back the user ID was 503.
When I started looking into file permissions in my repo directory, I noticed that all the directories were listed as owned by "503" and group "503", as opposed to "csvn" and group "csvn." This is a red flag that the "csvn" user who's ID was 503 somehow got deleted (in fact, as a general rule you should never see raw ID numbers for file user or group owners - that almost always indicates some sort of problem - don't even get me started on what NFS does). So I ran the same grep from above and noticed that the "csvn" user now had the ID "507." Ah ha! This was the problem.
So the solution, which is quite simple, was to just change to root and run
Code:
chown csvn:csvn /var/svn/repos/MYREPO
(note: I didn't have to actually change the mode of any files, I just had to get the ownership back to the correct user).[/code]
Bookmarks