svnserve -d child process spawning and svn connections under netstat

I see many svnserve -d processes running on my CentOS 6 box, one with the PID 400 and PPID 1 and the rest with PPID 400. I take this to mean the first one is started by init scripts (i know it is) and the rest are child processes of the original (forks?). What exactly causes svnserve -d to fork/spawn children and where is this behavior configured? Lastly, I see a lot of svn connections in netstat, and I want to know what operations would cause the client to appear connected in netstat? Do they need to have a locked file in the repo, or be browsing a repo? Are any of these operations stateful? I ask because I just migrated my server, and I do not see many connections yet. I want to know why the old server had 50 svn connections and the new one only has 3. I pointed the DNS record for the old to point to the new IP, so the behavior would be the same I would think, but I see much less connections.

CENTOS 6 SVN 1.6.11. Using svnadmin -d (daemonized) as an init script.

Answer

It turns out the old server had a problem that caused a large number of SVN connects to remain open indefinitely. SVN connections are not stateful and re usually a flash in the pan (appear and disappear quickly), at least that is my impression. I also believe svnserve -d forks everytime a new client requests a file from the repo or commits to a repo.. I think you can set it to be threaded and more options at /etc/sysconfig/svnserve.conf

Attribution
Source : Link , Question Author : Community , Answer Author : Community

Leave a Comment