Hello,
In my company, we use a homemade Windows service to launch processes on
remote servers (one service per server). A central scheduling program
connects to the remote service and then fires jobs on the machine.
This way, backup of our SVN repository is scheduled and the command
"svnadmin.exe dump D:\SVN_repos > D:\SVN_backups\myfile.dmp" is launched
through this Windows service.
Yesterday, while testing and stressing this solution, I noticed
svnadmin.exe has been killed during its dump when I was logging off the
server ("2010-01-05 16:23:12,682 TRACE [Service] svnadmin: Caught
signal" in the log). After searching a bit on my favourite search
engine, I realized that, on Windows, every process (even services!)
receives a CTRL_LOGOFF_EVENT, and if this signal is not caught by the
program, process is killed.
Did you run into such a situation? If yes how did you make it work? If
no, don't you think I should file an issue? I could suggest be add a
parameter to svnadmin to reduce OS signals usage [like -Xrs flag for
several JVMs].
Thanks in advance for your help,
Nicolas
PS : Maybe have you already seen this message on the subversion user
list (no answer) and on the tigris forum, where I got one answer
(http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessage
Id=2435481) ; I'm afraid each service on Windows, event started with
LocalSystem account receives a CTRL_LOGOFF_EVENT (cf
http://msdn.microsoft.com/en-us/library/aa376876%28VS.85%29.aspx). As I
understand a program must implement a HandlerRoutine Callback function
to ignore such events
(http://msdn.microsoft.com/en-us/library/ms683242%28VS.85%29.aspx)
-------------------
Email Disclaimer
http://www.cofidis.be/emaildisclaimer.php
Received on 2010-01-13 14:27:53 CET