You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Jonathan Grimm (JIRA)" <ji...@apache.org> on 2012/11/12 17:27:12 UTC

[jira] [Updated] (DAEMON-267) prunsrv failure doesn't trigger windows service recovery actions

     [ https://issues.apache.org/jira/browse/DAEMON-267?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Grimm updated DAEMON-267:
----------------------------------

    Attachment: prunsrv_recovery_actions_patch.diff

I've attached a fix for this problem, checks to see if the exit code is non-zero and if so does not report the service stop to the windows service controller at all.
                
> prunsrv failure doesn't trigger windows service recovery actions
> ----------------------------------------------------------------
>
>                 Key: DAEMON-267
>                 URL: https://issues.apache.org/jira/browse/DAEMON-267
>             Project: Commons Daemon
>          Issue Type: Bug
>          Components: Procrun
>    Affects Versions: 1.0.10
>         Environment: Windows
>            Reporter: Jonathan Grimm
>         Attachments: prunsrv_recovery_actions_patch.diff
>
>
> This is directly related to DAEMON-244, which goes a long way towards solving the problem but still doesn't trigger Windows Service recovery actions correctly.
> With that fix applied, when the Java process terminates abnormally prunsrv reports to the Windows Service Controller that the service had terminated and passes along the non-zero exit code from the app.  However, actually notifying the service controller that the service has terminated at all (even with a non-zero exit code) prevents the recovery actions from kicking in.
> From http://msdn.microsoft.com/en-us/library/ms685939(VS.85).aspx:
> "A service is considered failed when it terminates without reporting a status of SERVICE_STOPPED to the service controller"
> In order for the recovery actions to kick in, prunsrv should not notify the service controller at all when a failure is detected and should simply exit with a non-zero exit code.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira