[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: svnserve could save its PID somewhere

From: Branko Čibej <brane_at_xbc.nu>
Date: 2004-06-20 19:17:36 CEST

Tobias Ringström wrote:

> Branko Čibej wrote:
>
>> Grzegorz B. Prokopski wrote:
>>
>>> [*] Btw: what signal should I send to svnserve to let it know
>>> that I want it to shut down? Is simple TERM (15) the way to go?
>>
>>
>> Come to think of it, svnserve doesn't handle signals as well as it
>> should -- it should use some of the logic from the client, or
>> svnlook. Once that's done, SIGTERM should be just fine.
>
>
> On unix, svnserve uses fork by default. The main process is only a TCP
> listener and it does not open the repository. For each connection a
> child is forked that opens the repository. As long as you only kill
> the main process you're safe,

Well, at least closing the sockets and such would be nice, although it's
not strictly necessary.

> but if you kill one of the children, the repository will need
> recovery. There is no way to safely stop a threaded svnserve, though. :-(

Shouldn't be hard to do. You still have to catch the signal, then have
the main thread simply terminate. The process should wither away once
the other threads have exited, I think. But we do need the sighnal
handlers. Also, svnserve should reread its config files (if any) if it
sees a SIGHUP. That's just common behaviour.

-- Brane

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sun Jun 20 19:18:14 2004

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.