World Map
Java Service Wrapper is the easiest way to make your product more reliable.
  • Free Trial
  • Buy Now
wrapper.startup.timeout Property

wrapper.startup.timeout

Compatibility : 1.0.0
Editions :Professional EditionStandard EditionCommunity Edition
Platforms :WindowsMac OSXLinuxIBM AIXFreeBSDHP-UXSolarisIBM z/OSIBM z/Linux

WARNING

DO NOT modify any of these parameters unless you have read this property description. Incorrect settings can cause the Wrapper to fail to operate as expected.

Number of seconds to allow between the time that the Wrapper launches the JVM process and the time that the JVM side of the Wrapper responds that the application has started. Setting this property value to "0" (zero) means never time out.

The default value is "30 seconds".

Example:
wrapper.startup.timeout=30

Problems?:

If you are experiencing timeout problems as your application is starting up. The most common cause is a misconfiguration. Please verify that the WrapperManager is indeed being started. You should see the following output in the console when you launch the Wrapper.

wrapper  | --> Wrapper Started as Console
wrapper  | Java Service Wrapper Professional Edition 64-bit 3.x.x
wrapper  |   Copyright (C) 1999-2010 Tanuki Software, Ltd.  All Rights Reserved.
wrapper  |     http://wrapper.tanukisoftware.org
wrapper  |   Licensed to Acme, Inc.
wrapper  |
wrapper  | Launching a JVM...
jvm 1    | WrapperManager: Initializing...

If you do not see the Wrapper version displayed, then the WrapperManager is not being launched. Please make sure that you have read over the Summary of Integration Methods section to check the correct configuration. If the configuration looks correct, then try enabling DEBUG level log output to try and narrow in on the problem.

If the Wrapper version is being displayed, but the Wrapper is still timing out on startup, then it is most likely being caused by one of two reasons.

The first possibility is that the start method call is not returning. This should not be an issue if you are using the WrapperSimpleApp or SimpleStartStopApp classes to launch your application. If you are implementing the WrapperListener however, please verify that the start method is indeed returning upon completion. You should be able to see this with DEBUG output enabled.

The other possibility is that the startup method is simply taking a while to complete. In this case, it may be necessary to extend the default startup timeout. Try setting to "300 seconds" (5 minutes) and see if that makes the problem go away.

It is best to choose a value which is long enough to let the application start reliably, but short enough that the Wrapper will react as quickly as possible in the event of an actual JVM hang.

WrapperManager.signalStarting(n) :

If the start procedure sometimes takes a long time, one alternative to setting a long timeout is to periodically call the WrapperManager.signalStarting(n) method. This method let the Wrapper know that the JVM is alive and the application's startup is going well. The report will be repeated as many times as needed. Therefore, that additional time is required, and it may take much longer time on the startup.

WARNING

While the ability is there, be aware that setting this property value to "0" (zero) (= disable Timeout) or some large value will mean that the Wrapper's ability to detect a JVM hang during the startup phase will be disabled.

If the main class configured with the wrapper.java.mainclass property does not correctly initialize the Wrapper's WrapperManager class, then the startup will fail with the following message even though the application appears to have been started:

------------------------------------------------------------------------
Advice:
The Wrapper consists of a native component as well as a set of classes
which run within the JVM that it launches.  The Java component of the
Wrapper must be initialized promptly after the JVM is launched or the
Wrapper will timeout, as just happened.  Most likely the main class
specified in the Wrapper configuration file is not correctly initializing
the Wrapper classes:
    com.myapp.Main
While it is possible to do so manually, the Wrapper ships with helper
classes to make this initialization processes automatic.
Please review the integration section of the Wrapper's documentation
for the various methods which can be employed to launch an application
within the Wrapper:
    http://wrapper.tanukisoftware.org/doc/english/integrate.html
------------------------------------------------------------------------

As the message states, this is a configuration problem and can be resolved by following the instructions for one of the documented Integration Methods.

WARNING

While the wrapper.java.detect_debug_jvm property is set to "TRUE" and Debugger Detection is functioning, this "timeout" property will be ignored.

Reference: Timeout

Reference: Restart, Start Up