[jira] [Created] (DAEMON-244) prunsrv does not propagate exit code

2012-03-02 Thread Peter Ehrbar (Created) (JIRA)
prunsrv does not propagate exit code


 Key: DAEMON-244
 URL: https://issues.apache.org/jira/browse/DAEMON-244
 Project: Commons Daemon
  Issue Type: Bug
  Components: Procrun
Affects Versions: 1.0.10
 Environment: MS Windows
Reporter: Peter Ehrbar


In order to perform recovery actions (e.g. restart service) the Windows Service 
Controller needs to detect abnormal program terminations (failures). The 
Service controller detects a failure if either the service process crashes or 
the process terminates with a non-zero exit code.

For my Java server application I want to define recovery actions for the 
following conditions:
1) VM crash
2) Error was thrown (e.g. OutOfMemoryError)
3) System.exit() with non-zero exit code

When using prunsrv as a wrapper, I observe the following behaviour:
1) VM crash is detected only when StartMode=jvm, otherwise the Service 
Controller ignores the failure situation
2) When an Error is thrown and StartMode=jvm, prunsrv does not terminate but 
seems to hang. Therefore, the Service Controller is not aware of the failure. 
For other StartModes, prunsrv terminates, but the Service Controller does not 
detect the failure.
3) When System.exit(42) is called, prunsrv terminates but the Service 
Controller does not detect the non-zero exit code. This applies for all 
StartModes.

It seems to me as if prunsrv always terminates with exit code zero. But I 
expect the following behaviour:
1) VM crash with StartMode=jvm -> OK as it is now, but with other StartModes, 
prunsrv should terminate with a non-zero exit code in order to indicate the 
abnormal termination.
2) When an Error is thrown, prunsrv should terminate with a non-zero exit code 
in order to indicate the abnormal termination.
3) When System.exit() is called, prunsrv should terminate with the exit code 
passed to System.exit() (transparent behaviour), in order to let the 
application indicate a failure situation.

With the current behaviour, it is not possible to let the Windows Service 
Controller perform recovery actions.


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Created] (DAEMON-243) Support for Failure Recovery

2012-03-01 Thread Peter Ehrbar (Created) (JIRA)
Support for Failure Recovery


 Key: DAEMON-243
 URL: https://issues.apache.org/jira/browse/DAEMON-243
 Project: Commons Daemon
  Issue Type: New Feature
  Components: Procrun
Affects Versions: 1.0.10
 Environment: MS Windows
Reporter: Peter Ehrbar


The MS Windows Service Controller provides functionality to perform some basic 
failure recovery actions: Restart service or execute any command or restart the 
machine. This can be configured using the Service Controller GUI or in a shell 
with SC.EXE (commands FAILURE and FAILUREFLAG).

It would be convenient if this could be configured also using procrun.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira