Joerg Bruehe wrote:
Yes, it does announce.
I wrote "any external event ... that Windows *would* monitor"
(emphasis added): Does the Windows ServiceManager really know which
file to monitor for which entry to announce the service as "running" ?
see below.
in practice we find the service comes up to RUNNING within several
seconds of when we announce its being started. this is the longest
delay between RUNNING and ready-to-accept we have seen so far in
testing, on the order of 10 seconds.
I perfectly understand this delay is bad for you.
actually, as i tried to say initially, its more an inconvenience than
bad. we are presently simply polling by attempting to make connections
and catching exceptions until we succeed. after which we consider the
MySQL service up and running.
If you find some documentation telling how the MySQL server could tell
the Windows ServiceManager that it is now really ready to accept
connections, then please file a bug (feature request) with a pointer
to that info.
well, your server already communicates using the SetServiceStatus
function. for example, see the ServiceMain and SetStatus functions in
nt_servc.cc. here is the MSDN docs on the function:
http://msdn.microsoft.com/en-us/library/ms686241(VS.85).aspx
For now, I assume the ServiceManager just monitors whether a process
is running, and so an unknown time for the initialization phase cannot
be handled exactly.
the service tells the ServiceManager about its state. for some reason,
your Windows programmers have decided to announce STATE_RUNNING before
the engines are up and accepting connections. perhaps they have good
reasons for doing that. the purpose of my email was to see what could be
done, if anything. if you think it's worth a feature request, i will try
that.
thanks
Les
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]