-
Type: Bug
-
Resolution: Done
-
Priority: Major - P3
-
Affects Version/s: 3.0.5
-
Component/s: Internal Code
-
None
-
Fully Compatible
-
Windows
-
Platform 8 08/28/15
In Windows Vista, Microsoft changed the definition of SERVICE_CONTROL_SHUTDOWN such that there is a global OS timeout so that machines shutdown faster. In this case, the OS automatically terminates services that exceed the global timeout (typically 3 or 12 seconds). The services cannot veto this.
For data sensitive applications like databases, the correct event to register for is SERVICE_CONTROL_PRESHUTDOWN which allows applications to ask for longer timeouts via ChangeServiceConfig2 during installation, and forces Windows to wait for the service to stop or timeout. The default is 5 minutes.