wrapper.java.detect_debug_jvm

Compatibility :3.3.6
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.

The Wrapper has several features which are designed to detect when a JVM has frozen, or otherwise become unstable. Normally these features should all be left enabled. However, when a JVM is connected to a debugger, it is common for the JVM to intentionally be frozen as various debugging operations take place. In these cases, the Wrapper would normally think the JVM was frozen, and kill and restart it in the middle of a debug session. The Wrapper works around this problem by checking the configured Java command line and ignoring certain timeouts when it detects that a debugger is in use. This property makes it possible to enable or disable this debugging check. The default value is "TRUE", which will detect the debugging and ignore certain timeouts.

Example: (detect the debugging)
wrapper.java.detect_debug_jvm=TRUE

Debugger Detection:

The Wrapper will decide that the JVM is using a debugger if the wrapper.java.command property is set to "jdb" or "jdb.exe" or if one of the wrapper.java.additional.<n> properties is set to "-Xdebug".

When the Wrapper detects that a debugger is in use, the following banner will be logged on startup:

Log Message on startup:
------------------------------------------------------------------------
The JVM is being launched with a debugger enabled and could possibly be
suspended.  To avoid unwanted shutdowns, timeouts will be disabled,
removing the ability to detect and restart frozen JVMs.
------------------------------------------------------------------------

Then the first time that any of the ignored timeouts expire, the following banner will be logged:

Log Message:
------------------------------------------------------------------------
Ping: Timed out waiting for signal from JVM.
The JVM was launched with debug options so this may be because the JVM
is currently suspended by a debugger.  Any future timeouts during this
JVM invocation will be silently ignored.
------------------------------------------------------------------------

Timeout Property List affected by Debugger Detection

The following "timeout" will be ignored while the Debugger Detection is functioning.

Reference: Java Command