|
From: Tomer B <tom...@gm...> - 2010-04-22 17:00:07
|
Hi
I just saw this in logs:
/opt/javatest/libwrapper.so: ld.so.1: java: fatal:
/opt/javatest/libwrapper.so: wrong ELF class: ELFCLASS64 (Possible cause:
architecture word width mismatch)
I'm going to fix this and rerun the test. I think it will happen also
because in my server I had it correct.
I'll send again the logs after this is fixed.
On Thu, Apr 22, 2010 at 7:52 PM, Tomer B <tom...@gm...> wrote:
> Hi,
>
> I created a dummy java app that prints the time every 5 seconds and
> allocates some memory.
> I ran it for some time and although it did not halt I got the same
> behaviour with manners of the jvm stopped receiving pings from wrapper after
> some time! (which is what happens to my server).
> I'm attaching the java app code + conf + logs
>
> Attaching a zip containing the whole thing.
>
> ################
> JavaVMTester.java
> ################
>
> package com.test.javavmtester;
>
> import java.text.SimpleDateFormat;
> import java.util.Date;
>
> import org.tanukisoftware.wrapper.WrapperListener;
> import org.tanukisoftware.wrapper.WrapperManager;
>
> public class JavaVMTester extends Thread implements WrapperListener{
> private static byte[] myBytes = new byte[1024 * 1024 * 1200];
>
> public static void main(String[] args) {
> WrapperManager.start( new JavaVMTester(), args );
> }
>
> public void run() {
>
> while (true) {
> try {
> System.out.println(new SimpleDateFormat("yyyy.MM.dd G 'at'
> HH:mm:ss z").format(new Date()));
> Thread.sleep(5000);
> } catch (InterruptedException e) {
> // TODO Auto-generated catch block
> e.printStackTrace();
> }
> }
> }
>
>
> @Override
> public void controlEvent(int event) {
> if (WrapperManager.isControlledByNativeWrapper()) {
> System.out.println("controlled by wrapper");
> // The Wrapper will take care of this event
> } else {
> // We are not being controlled by the Wrapper, so
> // handle the event ourselves.
> if ((event == WrapperManager.WRAPPER_CTRL_C_EVENT) ||
> (event == WrapperManager.WRAPPER_CTRL_CLOSE_EVENT) ||
> (event == WrapperManager.WRAPPER_CTRL_SHUTDOWN_EVENT)){
> System.out.println("controlled by us");
> WrapperManager.stop(0);
> }
> }
> }
>
> @Override
> public Integer start(String[] arg0) {
> JavaVMTester jv = new JavaVMTester();
> jv.start();
> return null;
> }
>
> @Override
> public int stop(int arg0) {
> // TODO Auto-generated method stub
> return 0;
> }
> }
>
> #########
> server.conf
> #########
> #********************************************************************
>
> # Java Main class. This class must implement the WrapperListener interface
> # or guarantee that the WrapperManager class is initialized. Helper
> # classes are provided to do this for you. See the Integration section
> # of the documentation for details.
> wrapper.java.mainclass=com.test.javavmtester.JavaVMTester
> wrapper.java.command=/bin/java
> #********************************************************************
> # Wrapper Logging Properties
> #********************************************************************
> # Log file to use for wrapper output logging.
> wrapper.logfile=./server-wrapper.log
>
> wrapper.java.classpath.1=./wrapper.jar
> wrapper.java.classpath.2=.
>
> nitial Java Heap Size (in MB)
> wrapper.java.initmemory=1000
>
> # Maximum Java Heap Size (in MB)
> wrapper.java.maxmemory=2000
>
> # Java Additional Parameters
> wrapper.java.additional.1=-Xloggc:gc.txt
>
> wrapper.java.additional.2=-Dsun.rmi.dgc.client.gcInterval=0x7ffffffffffffffe
>
> wrapper.java.additional.3=-Dsun.rmi.dgc.server.gcInterval=0x7ffffffffffffffe
> wrapper.java.additional.4=-Dsun.net.inetaddr.ttl=0
> wrapper.java.additional.5=-Dsun.net.client.defaultConnectTimeout=30000
> wrapper.java.additional.6=-Dsun.net.client.defaultReadTimeout=120000
> wrapper.java.additional.7=-Dummy
> wrapper.java.additional.8=-XX:+PrintGCDetails
> wrapper.java.additional.9=-XX:+PrintGCTimeStamps
> wrapper.java.additional.10=-XX:MaxPermSize=256M
> wrapper.java.additional.11=-DentityExpansionLimit=256000
> wrapper.java.additional.12=-verbose
> wrapper.java.additional.13=-XX:-OmitStackTraceInFastThrow
> wrapper.java.additional.14=-XX:+UseParallelOldGC
> wrapper.java.additional.15=-Duser.timezone=Asia/Jerusalem
> wrapper.java.additional.17=-XX:-ReduceInitialCardMarks
> wrapper.java.additional.18=-Dummy
> wrapper.java.additional.19=-Dummy
> wrapper.java.additional.20=-Dummy
>
> wrapper.java.additional.21=-Dcom.sun.management.jmxremote.port=13034
>
> wrapper.java.additional.22=-Dcom.sun.management.jmxremote.authenticate=false
> wrapper.java.additional.23=-Dcom.sun.management.jmxremote.ssl=false
>
> wrapper.java.additional.24=-Dorg.tanukisoftware.wrapper.WrapperManager.mbean=true
>
> wrapper.java.library.path.1=./
>
> # Format of output for the log file. (See docs for formats)
> wrapper.logfile.format=LPTM
>
> # Log Level for log file output. (See docs for log levels)
> wrapper.logfile.loglevel=DEBUG
>
> # Allow the service to interact with the desktop.
> wrapper.shutdown.timeout=300
> wrapper.ping.timeout=300
>
> ###########
> wrapper.conf
> ###########
>
> #********************************************************************
> # Wrapper License Properties (Ignored by Community Edition)
> #********************************************************************
> # Include file problems can be debugged by removing the first '#'
> # from the following line:
> ##include.debug
> #include ../conf/wrapper-license.conf
> #include ../conf/wrapper-license-%WRAPPER_HOST_NAME%.conf
>
> #********************************************************************
> # Wrapper Java Properties
> #********************************************************************
> # Java Application
> wrapper.java.command=java
>
> # Tell the Wrapper to log the full generated Java command line.
> #wrapper.java.command.loglevel=DEBUG
>
> # Java Main class. This class must implement the WrapperListener interface
> # or guarantee that the WrapperManager class is initialized. Helper
> # classes are provided to do this for you. See the Integration section
> # of the documentation for details.
> wrapper.java.mainclass=org.tanukisoftware.wrapper.test.Main
>
> # Java Classpath (include wrapper.jar) Add class path elements as
> # needed starting from 1
> wrapper.java.classpath.1=./wrappertest.jar
> wrapper.java.classpath.2=./wrapper.jar
>
> # Java Library Path (location of Wrapper.DLL or libwrapper.so)
> wrapper.java.library.path.1=./
>
> # Java Bits. On applicable platforms, tells the JVM to run in 32 or 64-bit
> mode.
> wrapper.java.additional.auto_bits=TRUE
>
> # Java Additional Parameters
> #wrapper.java.additional.1=
>
> # Initial Java Heap Size (in MB)
> #wrapper.java.initmemory=3
>
> # Maximum Java Heap Size (in MB)
> #wrapper.java.maxmemory=64
>
> # Application parameters. Add parameters as needed starting from 1
> #wrapper.app.parameter.1=
>
> #********************************************************************
> # Wrapper Logging Properties
> #********************************************************************
> # Enables Debug output from the Wrapper.
> # wrapper.debug=TRUE
>
> # Format of output for the console. (See docs for formats)
> wrapper.console.format=PM
>
> # Log Level for console output. (See docs for log levels)
> wrapper.console.loglevel=DEBUG
>
> # Log file to use for wrapper output logging.
> wrapper.logfile=./wrapper.log
>
> # Format of output for the log file. (See docs for formats)
> wrapper.logfile.format=LPTM
>
> # Log Level for log file output. (See docs for log levels)
> wrapper.logfile.loglevel=DEBUG
>
> # Maximum size that the log file will be allowed to grow to before
> # the log is rolled. Size is specified in bytes. The default value
> # of 0, disables log rolling. May abbreviate with the 'k' (kb) or
> # 'm' (mb) suffix. For example: 10m = 10 megabytes.
> wrapper.logfile.maxsize=0
>
> # Maximum number of rolled log files which will be allowed before old
> # files are deleted. The default value of 0 implies no limit.
> wrapper.logfile.maxfiles=0
>
> # Log Level for sys/event log output. (See docs for log levels)
> wrapper.syslog.loglevel=USER
> #********************************************************************
> # Wrapper General Properties
> #********************************************************************
> # Allow for the use of non-contiguous numbered properties
> wrapper.ignore_sequence_gaps=TRUE
>
> # Title to use when running as a console
> wrapper.console.title=Test Wrapper Sample Application
>
> #********************************************************************
> # Wrapper Windows NT/2000/XP Service Properties
> #********************************************************************
> # WARNING - Do not modify any of these properties when an application
> # using this configuration file has been installed as a service.
> # Please uninstall the service before modifying this section. The
> # service can then be reinstalled.
>
> # Name of the service
> wrapper.name=testwrapper
>
> # Display name of the service
> wrapper.displayname=Test Wrapper Sample Application
>
> # Description of the service
> wrapper.description=Test Wrapper Sample Application Description
>
> # Service dependencies. Add dependencies as needed starting from 1
> wrapper.ntservice.dependency.1=
>
> # Mode in which the service is installed. AUTO_START, DELAY_START or
> DEMAND_START
> wrapper.ntservice.starttype=AUTO_START
>
> # Allow the service to interact with the desktop.
> wrapper.ntservice.interactive=false
>
> ###############
> server-wrapper.log
> ###############
>
> INFO | jvm 1 | 2010/04/22 18:25:58 | WrapperManager Debug: Received a
> packet PING : ping
> INFO | jvm 1 | 2010/04/22 18:25:58 | WrapperManager Debug: Send a
> packet PING : ping
> DEBUG | wrapperp | 2010/04/22 18:25:58 | read a packet PING : ping
> INFO | jvm 1 | 2010/04/22 18:26:00 | 2010.04.22 AD at 18:26:00 IDT
> DEBUG | wrapperp | 2010/04/22 18:26:02 | send a packet PING : ping
> INFO | jvm 1 | 2010/04/22 18:26:02 | WrapperManager Debug: Received a
> packet PING : ping
> INFO | jvm 1 | 2010/04/22 18:26:02 | WrapperManager Debug: Send a
> packet PING : ping
> DEBUG | wrapperp | 2010/04/22 18:26:02 | read a packet PING : ping
> INFO | jvm 1 | 2010/04/22 18:26:05 | 2010.04.22 AD at 18:26:05 IDT
> DEBUG | wrapperp | 2010/04/22 18:26:06 | send a packet PING : ping
> INFO | jvm 1 | 2010/04/22 18:26:07 | WrapperManager Debug: Received a
> packet PING : ping
> INFO | jvm 1 | 2010/04/22 18:26:07 | WrapperManager Debug: Send a
> packet PING : ping
> DEBUG | wrapperp | 2010/04/22 18:26:07 | read a packet PING : ping
> INFO | jvm 1 | 2010/04/22 18:26:10 | 2010.04.22 AD at 18:26:10 IDT
> DEBUG | wrapperp | 2010/04/22 18:26:11 | send a packet PING : ping
> INFO | jvm 1 | 2010/04/22 18:26:11 | WrapperManager Debug: Received a
> packet PING : ping
> INFO | jvm 1 | 2010/04/22 18:26:11 | WrapperManager Debug: Send a
> packet PING : ping
> DEBUG | wrapperp | 2010/04/22 18:26:11 | read a packet PING : ping
> DEBUG | wrapperp | 2010/04/22 18:26:15 | send a packet PING : ping
> INFO | jvm 1 | 2010/04/22 18:26:15 | WrapperManager Debug: Received a
> packet PING : ping
> INFO | jvm 1 | 2010/04/22 18:26:15 | WrapperManager Debug: Send a
> packet PING : ping
> DEBUG | wrapperp | 2010/04/22 18:26:15 | read a packet PING : ping
> INFO | jvm 1 | 2010/04/22 18:26:15 | 2010.04.22 AD at 18:26:15 IDT
> DEBUG | wrapperp | 2010/04/22 18:26:19 | send a packet PING : ping
> INFO | jvm 1 | 2010/04/22 18:26:19 | WrapperManager Debug: Received a
> packet PING : ping
> INFO | jvm 1 | 2010/04/22 18:26:19 | WrapperManager Debug: Send a
> packet PING : ping
> DEBUG | wrapperp | 2010/04/22 18:26:19 | read a packet PING : ping
> INFO | jvm 1 | 2010/04/22 18:26:20 | 2010.04.22 AD at 18:26:20 IDT
> INFO | jvm 1 | 2010/04/22 18:26:25 | 2010.04.22 AD at 18:26:25 IDT
> INFO | jvm 1 | 2010/04/22 18:26:30 | 2010.04.22 AD at 18:26:30 IDT
> INFO | jvm 1 | 2010/04/22 18:26:35 | 2010.04.22 AD at 18:26:35 IDT
> INFO | jvm 1 | 2010/04/22 18:26:40 | 2010.04.22 AD at 18:26:40 IDT
> INFO | jvm 1 | 2010/04/22 18:26:45 | 2010.04.22 AD at 18:26:45 IDT
> INFO | jvm 1 | 2010/04/22 18:26:50 | 2010.04.22 AD at 18:26:50 IDT
> INFO | jvm 1 | 2010/04/22 18:26:55 | 2010.04.22 AD at 18:26:55 IDT
> INFO | jvm 1 | 2010/04/22 18:27:00 | 2010.04.22 AD at 18:27:00 IDT
> INFO | jvm 1 | 2010/04/22 18:27:05 | 2010.04.22 AD at 18:27:05 IDT
> INFO | jvm 1 | 2010/04/22 18:27:10 | 2010.04.22 AD at 18:27:10 IDT
> INFO | jvm 1 | 2010/04/22 18:27:16 | 2010.04.22 AD at 18:27:15 IDT
> INFO | jvm 1 | 2010/04/22 18:27:21 | 2010.04.22 AD at 18:27:20 IDT
> INFO | jvm 1 | 2010/04/22 18:27:26 | 2010.04.22 AD at 18:27:25 IDT
> INFO | jvm 1 | 2010/04/22 18:27:30 | 2010.04.22 AD at 18:27:30 IDT
> INFO | jvm 1 | 2010/04/22 18:27:35 | 2010.04.22 AD at 18:27:35 IDT
> INFO | jvm 1 | 2010/04/22 18:27:41 | 2010.04.22 AD at 18:27:40 IDT
> INFO | jvm 1 | 2010/04/22 18:27:46 | 2010.04.22 AD at 18:27:45 IDT
> INFO | jvm 1 | 2010/04/22 18:27:51 | 2010.04.22 AD at 18:27:51 IDT
> INFO | jvm 1 | 2010/04/22 18:27:56 | 2010.04.22 AD at 18:27:56 IDT
> INFO | jvm 1 | 2010/04/22 18:28:01 | 2010.04.22 AD at 18:28:01 IDT
> INFO | jvm 1 | 2010/04/22 18:28:06 | 2010.04.22 AD at 18:28:06 IDT
> INFO | jvm 1 | 2010/04/22 18:28:11 | 2010.04.22 AD at 18:28:11 IDT
> INFO | jvm 1 | 2010/04/22 18:28:16 | 2010.04.22 AD at 18:28:16 IDT
> INFO | jvm 1 | 2010/04/22 18:28:21 | 2010.04.22 AD at 18:28:21 IDT
> INFO | jvm 1 | 2010/04/22 18:28:26 | 2010.04.22 AD at 18:28:26 IDT
> INFO | jvm 1 | 2010/04/22 18:28:31 | 2010.04.22 AD at 18:28:31 IDT
> INFO | jvm 1 | 2010/04/22 18:28:36 | 2010.04.22 AD at 18:28:36 IDT
> INFO | jvm 1 | 2010/04/22 18:28:41 | 2010.04.22 AD at 18:28:41 IDT
> INFO | jvm 1 | 2010/04/22 18:28:46 | 2010.04.22 AD at 18:28:46 IDT
> INFO | jvm 1 | 2010/04/22 18:28:51 | 2010.04.22 AD at 18:28:51 IDT
> INFO | jvm 1 | 2010/04/22 18:28:56 | 2010.04.22 AD at 18:28:56 IDT
> INFO | jvm 1 | 2010/04/22 18:29:01 | 2010.04.22 AD at 18:29:01 IDT
> INFO | jvm 1 | 2010/04/22 18:29:06 | 2010.04.22 AD at 18:29:06 IDT
> INFO | jvm 1 | 2010/04/22 18:29:11 | 2010.04.22 AD at 18:29:11 IDT
> INFO | jvm 1 | 2010/04/22 18:29:16 | 2010.04.22 AD at 18:29:16 IDT
> INFO | jvm 1 | 2010/04/22 18:29:21 | 2010.04.22 AD at 18:29:21 IDT
> INFO | jvm 1 | 2010/04/22 18:29:26 | 2010.04.22 AD at 18:29:26 IDT
> INFO | jvm 1 | 2010/04/22 18:29:31 | 2010.04.22 AD at 18:29:31 IDT
> INFO | jvm 1 | 2010/04/22 18:29:36 | 2010.04.22 AD at 18:29:36 IDT
> INFO | jvm 1 | 2010/04/22 18:29:41 | 2010.04.22 AD at 18:29:41 IDT
> INFO | jvm 1 | 2010/04/22 18:29:46 | 2010.04.22 AD at 18:29:46 IDT
> INFO | jvm 1 | 2010/04/22 18:29:51 | 2010.04.22 AD at 18:29:51 IDT
> INFO | jvm 1 | 2010/04/22 18:29:56 | 2010.04.22 AD at 18:29:56 IDT
> INFO | jvm 1 | 2010/04/22 18:30:01 | 2010.04.22 AD at 18:30:01 IDT
> INFO | jvm 1 | 2010/04/22 18:30:06 | 2010.04.22 AD at 18:30:06 IDT
> INFO | jvm 1 | 2010/04/22 18:30:11 | 2010.04.22 AD at 18:30:11 IDT
> INFO | jvm 1 | 2010/04/22 18:30:16 | 2010.04.22 AD at 18:30:16 IDT
> INFO | jvm 1 | 2010/04/22 18:30:21 | 2010.04.22 AD at 18:30:21 IDT
> INFO | jvm 1 | 2010/04/22 18:30:26 | 2010.04.22 AD at 18:30:26 IDT
> INFO | jvm 1 | 2010/04/22 18:30:31 | 2010.04.22 AD at 18:30:31 IDT
> INFO | jvm 1 | 2010/04/22 18:30:36 | 2010.04.22 AD at 18:30:36 IDT
> INFO | jvm 1 | 2010/04/22 18:30:41 | 2010.04.22 AD at 18:30:41 IDT
> INFO | jvm 1 | 2010/04/22 18:30:46 | 2010.04.22 AD at 18:30:46 IDT
> INFO | jvm 1 | 2010/04/22 18:30:51 | 2010.04.22 AD at 18:30:51 IDT
> INFO | jvm 1 | 2010/04/22 18:30:56 | 2010.04.22 AD at 18:30:56 IDT
> INFO | jvm 1 | 2010/04/22 18:31:01 | 2010.04.22 AD at 18:31:01 IDT
> INFO | jvm 1 | 2010/04/22 18:31:06 | 2010.04.22 AD at 18:31:06 IDT
> INFO | jvm 1 | 2010/04/22 18:31:11 | 2010.04.22 AD at 18:31:11 IDT
> INFO | jvm 1 | 2010/04/22 18:31:16 | 2010.04.22 AD at 18:31:16 IDT
> INFO | jvm 1 | 2010/04/22 18:31:19 | [Loaded
> java.net.SocketTimeoutException from
> /usr/jdk/instances/jdk1.6.0/jre/lib/rt.jar]
> INFO | jvm 1 | 2010/04/22 18:31:19 | [Loaded
> sun.net.ConnectionResetException from
> /usr/jdk/instances/jdk1.6.0/jre/lib/rt.jar]
> INFO | jvm 1 | 2010/04/22 18:31:19 | WrapperManager Debug: Read Timed
> out. (Last Ping was 0 milliseconds ago)
> INFO | jvm 1 | 2010/04/22 18:31:21 | 2010.04.22 AD at 18:31:21 IDT
> INFO | jvm 1 | 2010/04/22 18:31:26 | 2010.04.22 AD at 18:31:26 IDT
> INFO | jvm 1 | 2010/04/22 18:31:31 | 2010.04.22 AD at 18:31:31 IDT
> INFO | jvm 1 | 2010/04/22 18:31:36 | 2010.04.22 AD at 18:31:36 IDT
> INFO | jvm 1 | 2010/04/22 18:31:41 | 2010.04.22 AD at 18:31:41 IDT
> INFO | jvm 1 | 2010/04/22 18:31:46 | 2010.04.22 AD at 18:31:46 IDT
> INFO | jvm 1 | 2010/04/22 18:31:51 | 2010.04.22 AD at 18:31:51 IDT
> INFO | jvm 1 | 2010/04/22 18:31:56 | 2010.04.22 AD at 18:31:56 IDT
> INFO | jvm 1 | 2010/04/22 18:32:01 | 2010.04.22 AD at 18:32:01 IDT
> INFO | jvm 1 | 2010/04/22 18:32:06 | 2010.04.22 AD at 18:32:06 IDT
> INFO | jvm 1 | 2010/04/22 18:32:11 | 2010.04.22 AD at 18:32:11 IDT
> INFO | jvm 1 | 2010/04/22 18:32:16 | 2010.04.22 AD at 18:32:16 IDT
> INFO | jvm 1 | 2010/04/22 18:32:21 | 2010.04.22 AD at 18:32:21 IDT
> INFO | jvm 1 | 2010/04/22 18:32:26 | 2010.04.22 AD at 18:32:26 IDT
> INFO | jvm 1 | 2010/04/22 18:32:31 | 2010.04.22 AD at 18:32:31 IDT
> INFO | jvm 1 | 2010/04/22 18:32:36 | 2010.04.22 AD at 18:32:36 IDT
> INFO | jvm 1 | 2010/04/22 18:32:41 | 2010.04.22 AD at 18:32:41 IDT
> INFO | jvm 1 | 2010/04/22 18:32:46 | 2010.04.22 AD at 18:32:46 IDT
> INFO | jvm 1 | 2010/04/22 18:32:51 | 2010.04.22 AD at 18:32:51 IDT
> INFO | jvm 1 | 2010/04/22 18:32:56 | 2010.04.22 AD at 18:32:56 IDT
> INFO | jvm 1 | 2010/04/22 18:33:01 | 2010.04.22 AD at 18:33:01 IDT
> INFO | jvm 1 | 2010/04/22 18:33:06 | 2010.04.22 AD at 18:33:06 IDT
> INFO | jvm 1 | 2010/04/22 18:33:11 | 2010.04.22 AD at 18:33:11 IDT
> INFO | jvm 1 | 2010/04/22 18:33:16 | 2010.04.22 AD at 18:33:16 IDT
> INFO | jvm 1 | 2010/04/22 18:33:21 | 2010.04.22 AD at 18:33:21 IDT
> INFO | jvm 1 | 2010/04/22 18:33:26 | 2010.04.22 AD at 18:33:26 IDT
> INFO | jvm 1 | 2010/04/22 18:33:31 | 2010.04.22 AD at 18:33:31 IDT
> INFO | jvm 1 | 2010/04/22 18:33:36 | 2010.04.22 AD at 18:33:36 IDT
> INFO | jvm 1 | 2010/04/22 18:33:41 | 2010.04.22 AD at 18:33:41 IDT
> INFO | jvm 1 | 2010/04/22 18:33:46 | 2010.04.22 AD at 18:33:46 IDT
> INFO | jvm 1 | 2010/04/22 18:33:51 | 2010.04.22 AD at 18:33:51 IDT
> INFO | jvm 1 | 2010/04/22 18:33:57 | 2010.04.22 AD at 18:33:56 IDT
> INFO | jvm 1 | 2010/04/22 18:34:01 | 2010.04.22 AD at 18:34:01 IDT
> INFO | jvm 1 | 2010/04/22 18:34:06 | 2010.04.22 AD at 18:34:06 IDT
> INFO | jvm 1 | 2010/04/22 18:34:11 | 2010.04.22 AD at 18:34:11 IDT
> INFO | jvm 1 | 2010/04/22 18:34:16 | 2010.04.22 AD at 18:34:16 IDT
> INFO | jvm 1 | 2010/04/22 18:34:22 | 2010.04.22 AD at 18:34:21 IDT
> INFO | jvm 1 | 2010/04/22 18:34:27 | 2010.04.22 AD at 18:34:27 IDT
> INFO | jvm 1 | 2010/04/22 18:34:32 | 2010.04.22 AD at 18:34:32 IDT
> INFO | jvm 1 | 2010/04/22 18:34:37 | 2010.04.22 AD at 18:34:37 IDT
> INFO | jvm 1 | 2010/04/22 18:34:42 | 2010.04.22 AD at 18:34:42 IDT
> INFO | jvm 1 | 2010/04/22 18:34:47 | 2010.04.22 AD at 18:34:47 IDT
> INFO | jvm 1 | 2010/04/22 18:34:52 | 2010.04.22 AD at 18:34:52 IDT
> INFO | jvm 1 | 2010/04/22 18:34:57 | 2010.04.22 AD at 18:34:57 IDT
> INFO | jvm 1 | 2010/04/22 18:35:02 | 2010.04.22 AD at 18:35:02 IDT
> INFO | jvm 1 | 2010/04/22 18:35:07 | 2010.04.22 AD at 18:35:07 IDT
> INFO | jvm 1 | 2010/04/22 18:35:12 | 2010.04.22 AD at 18:35:12 IDT
> INFO | jvm 1 | 2010/04/22 18:35:17 | 2010.04.22 AD at 18:35:17 IDT
> INFO | jvm 1 | 2010/04/22 18:35:22 | 2010.04.22 AD at 18:35:22 IDT
> INFO | jvm 1 | 2010/04/22 18:35:27 | 2010.04.22 AD at 18:35:27 IDT
> INFO | jvm 1 | 2010/04/22 18:35:32 | 2010.04.22 AD at 18:35:32 IDT
> INFO | jvm 1 | 2010/04/22 18:35:37 | 2010.04.22 AD at 18:35:37 IDT
> INFO | jvm 1 | 2010/04/22 18:35:42 | 2010.04.22 AD at 18:35:42 IDT
> INFO | jvm 1 | 2010/04/22 18:35:47 | 2010.04.22 AD at 18:35:47 IDT
> INFO | jvm 1 | 2010/04/22 18:35:52 | 2010.04.22 AD at 18:35:52 IDT
> INFO | jvm 1 | 2010/04/22 18:35:57 | 2010.04.22 AD at 18:35:57 IDT
> INFO | jvm 1 | 2010/04/22 18:36:02 | 2010.04.22 AD at 18:36:02 IDT
> INFO | jvm 1 | 2010/04/22 18:36:07 | 2010.04.22 AD at 18:36:07 IDT
> INFO | jvm 1 | 2010/04/22 18:36:12 | 2010.04.22 AD at 18:36:12 IDT
> INFO | jvm 1 | 2010/04/22 18:36:17 | 2010.04.22 AD at 18:36:17 IDT
> INFO | jvm 1 | 2010/04/22 18:36:19 | WrapperManager Debug: Read Timed
> out. (Last Ping was 0 milliseconds ago)
> INFO | jvm 1 | 2010/04/22 18:36:22 | 2010.04.22 AD at 18:36:22 IDT
> INFO | jvm 1 | 2010/04/22 18:36:27 | 2010.04.22 AD at 18:36:27 IDT
> INFO | jvm 1 | 2010/04/22 18:36:32 | 2010.04.22 AD at 18:36:32 IDT
> INFO | jvm 1 | 2010/04/22 18:36:37 | 2010.04.22 AD at 18:36:37 IDT
> INFO | jvm 1 | 2010/04/22 18:36:42 | 2010.04.22 AD at 18:36:42 IDT
> INFO | jvm 1 | 2010/04/22 18:36:47 | 2010.04.22 AD at 18:36:47 IDT
> INFO | jvm 1 | 2010/04/22 18:36:52 | 2010.04.22 AD at 18:36:52 IDT
> INFO | jvm 1 | 2010/04/22 18:36:57 | 2010.04.22 AD at 18:36:57 IDT
> INFO | jvm 1 | 2010/04/22 18:37:02 | 2010.04.22 AD at 18:37:02 IDT
> INFO | jvm 1 | 2010/04/22 18:37:07 | 2010.04.22 AD at 18:37:07 IDT
> INFO | jvm 1 | 2010/04/22 18:37:12 | 2010.04.22 AD at 18:37:12 IDT
> INFO | jvm 1 | 2010/04/22 18:37:17 | 2010.04.22 AD at 18:37:17 IDT
> INFO | jvm 1 | 2010/04/22 18:37:22 | 2010.04.22 AD at 18:37:22 IDT
> INFO | jvm 1 | 2010/04/22 18:37:27 | 2010.04.22 AD at 18:37:27 IDT
> INFO | jvm 1 | 2010/04/22 18:37:32 | 2010.04.22 AD at 18:37:32 IDT
> INFO | jvm 1 | 2010/04/22 18:37:37 | 2010.04.22 AD at 18:37:37 IDT
> INFO | jvm 1 | 2010/04/22 18:37:42 | 2010.04.22 AD at 18:37:42 IDT
> INFO | jvm 1 | 2010/04/22 18:37:47 | 2010.04.22 AD at 18:37:47 IDT
> INFO | jvm 1 | 2010/04/22 18:37:52 | 2010.04.22 AD at 18:37:52 IDT
> INFO | jvm 1 | 2010/04/22 18:37:57 | 2010.04.22 AD at 18:37:57 IDT
> INFO | jvm 1 | 2010/04/22 18:38:02 | 2010.04.22 AD at 18:38:02 IDT
> INFO | jvm 1 | 2010/04/22 18:38:07 | 2010.04.22 AD at 18:38:07 IDT
> INFO | jvm 1 | 2010/04/22 18:38:12 | 2010.04.22 AD at 18:38:12 IDT
> INFO | jvm 1 | 2010/04/22 18:38:17 | 2010.04.22 AD at 18:38:17 IDT
> INFO | jvm 1 | 2010/04/22 18:38:22 | 2010.04.22 AD at 18:38:22 IDT
> INFO | jvm 1 | 2010/04/22 18:38:27 | 2010.04.22 AD at 18:38:27 IDT
> INFO | jvm 1 | 2010/04/22 18:38:32 | 2010.04.22 AD at 18:38:32 IDT
> INFO | jvm 1 | 2010/04/22 18:38:37 | 2010.04.22 AD at 18:38:37 IDT
> INFO | jvm 1 | 2010/04/22 18:38:42 | 2010.04.22 AD at 18:38:42 IDT
> INFO | jvm 1 | 2010/04/22 18:38:47 | 2010.04.22 AD at 18:38:47 IDT
> INFO | jvm 1 | 2010/04/22 18:38:52 | 2010.04.22 AD at 18:38:52 IDT
> INFO | jvm 1 | 2010/04/22 18:38:57 | 2010.04.22 AD at 18:38:57 IDT
> INFO | jvm 1 | 2010/04/22 18:39:02 | 2010.04.22 AD at 18:39:02 IDT
> INFO | jvm 1 | 2010/04/22 18:39:07 | 2010.04.22 AD at 18:39:07 IDT
> INFO | jvm 1 | 2010/04/22 18:39:12 | 2010.04.22 AD at 18:39:12 IDT
> INFO | jvm 1 | 2010/04/22 18:39:17 | 2010.04.22 AD at 18:39:17 IDT
> INFO | jvm 1 | 2010/04/22 18:39:22 | 2010.04.22 AD at 18:39:22 IDT
> INFO | jvm 1 | 2010/04/22 18:39:27 | 2010.04.22 AD at 18:39:27 IDT
>
>
>
>
> On Thu, Apr 22, 2010 at 11:22 AM, Leif Mortenson <
> lei...@ta...> wrote:
>
>> Tomer,
>> The Wrapper is designed to monitor the JVMs state to make sure that it
>> is running in a normal state. As one of its many checks, it sends a
>> ping every 5 seconds to the Java process. The Java process reads and
>> then responds to this ping, letting the Wrapper know that the JVM is
>> still alive.
>> The wrapper.ping.timeout is the maximum amount of time that the
>> Wrapper will allow without a ping reply before giving up and killing
>> the JVM.
>>
>> There is another issue that is especially important on Windows
>> machines, but also on UNIX. If the Wrapper process should ever crash,
>> then the Java process would be left running in the background as a
>> zombie without any way of terminating it. On Windows when running in
>> the service space, this means that the system would need to be
>> rebooted to kill the JVM.
>> To avoid this case, the Java side of the Wrapper keeps track of when
>> the last ping was received from the Wrapper. After the
>> wrapper.ping.timeout has expired, the JVM will request that the
>> Wrapper restart it. If that still fails for another 90 seconds then
>> the JVM will assume that the Wrapper is dead and exit. The Java side
>> of the Wrapper also checks to make sure that all of this only happens
>> if the Java-side tick timer has been progressing to make sure that it
>> is not a matter of the JVM being starved of CPU.
>> This is a feature that has been in the Wrapper without modification
>> for several years without modification. This is the first case I have
>> seen where it causes any problems.
>>
>> When the Java side of the Wrapper decides that the Wrapper is gone, it
>> calls System.exit to shut itself down. In your case however, the
>> Wrapper is still there. It sees that the JVM requested that it exit
>> and complies. This is why the JVM and then Wrapper are shutting down.
>>
>> I would really like to take a look at your unmodified wrapper.log as
>> well as the wrapper.conf file so I can make sense of exactly what is
>> happening on your system.
>>
>> As I wait, we are doing some more tests on our end to try and figure
>> out what combination of events would make this kind of failure
>> possible.
>>
>> I look forward to your response.
>>
>> Cheers,
>> Leif
>>
>> On Wed, Apr 21, 2010 at 10:02 PM, Tomer B <tom...@gm...> wrote:
>> > Hi,
>> > I'm checking about sending the logs.
>> >
>> > But what do you think of the following analysis (and question I raise).
>> > As I know that if I reservate some cpu processing to the vm that runs
>> the
>> > wrapper+jvm then this issue does not happen - there is no shutdown, that
>> > means that maybe whats happening is that without cpu reservation the
>> vmware
>> > decides not to give cpu to the wrapper, therefore the wrapper does not
>> ping
>> > my jvm, and therefore the jvm asks the wrapper to restart itself (as
>> seen
>> > from logs), in that case the wrapper manager is not confused because it
>> did
>> > not get any pings from the wrapper (in the logs I don't see that the
>> wrapper
>> > is sending pings at that time). However my question here is assuming
>> this
>> > is what is happening, how come when the wrapper shuts down the jvm and
>> not
>> > restarts it - the wrapper says:
>> >
>> >> DEBUG | wrapper | 2010/04/20 22:26:24 | Signal trapped. Details:
>> >> DEBUG | wrapper | 2010/04/20 22:26:24 | signal number=18 (SIGCHLD),
>> >> source="unknown"
>> >> DEBUG | wrapper | 2010/04/20 22:26:24 | Received SIGCHLD, checking
>> JVM
>> >> process status.
>> >> DEBUG | wrapper | 2010/04/20 22:26:24 | JVM process exited with a
>> code
>> >> of
>> >> 1, setting the wrapper exit code to 1.
>> >> DEBUG | wrapper | 2010/04/20 22:26:24 | JVM exited normally.
>> >> STATUS | wrapper | 2010/04/20 22:26:24 | <-- Wrapper Stopped
>> >
>> > Which looks like saying the wrapper is stopping the application,
>> shouldn't
>> > it just restart the jvm in case of ping timeouts? it looks like when my
>> jvm
>> > shuts down (as it requested the wrapper to shut itself down because it
>> did
>> > not recieve pings from wrapper) at that point when it finishes shut down
>> the
>> > wrapper receives SIGCHLD and decides to terminate the jvm and then also
>> > shuts down itself - what do you think of that? why is that happening?
>> why is
>> > there a SIGCHLD? isn't that normal?
>> >
>> > Thanks
>> > Tomer
>> >
>> >
>> > On Wed, Apr 21, 2010 at 9:52 AM, Leif Mortenson <
>> le...@ta...>
>> > wrote:
>> >>
>> >> Tomer,
>> >> Sorry for the trouble. Looking at subset of the log file, I am having
>> >> a hard time seeing exactly what is happening. Would it be possible
>> >> for you to send the full unedited wrapper.log file along with your
>> >> wrapper.conf to me directly off list?
>> >>
>> >> Something is causing read timeouts like the following. Are you aware
>> >> of any system time shifts taking place. The one below was about 5
>> >> minutes.
>> >> INFO | jvm 1 | 2010/04/20 22:21:13 | WrapperManager Debug: Read
>> >> Timed out. (Last Ping was 298400 milliseconds ago)
>> >>
>> >> The Wrapper's tick timer was designed to handle such time shifts
>> >> without problem.
>> >>
>> >> It looks like the WrapperManager is confused and thinks that the
>> >> Wrapper has not pinged it for 90 seconds more than the ping timeout.
>> >> This should only happen if the Wrapper process is dead, which is
>> >> obviously not true in your case.
>> >>
>> >> I will go back over the code and try to figure out exactly what is
>> >> going on, but the full log will be very helpful.
>> >>
>> >> As a note to that old thread. The problem they were having with the
>> >> EAR file needing to be reset can be easily handled with in the
>> >> Professional Edition with the ability to execute shell scripts or
>> >> other external commands prior to launching a new Java instance:
>> >> http://wrapper.tanukisoftware.org/doc/english/props-event.html#command
>> >>
>> >> Cheers,
>> >> Leif
>> >>
>> >> On Wed, Apr 21, 2010 at 6:05 AM, Tomer B <tom...@gm...> wrote:
>> >> > Hi,
>> >> >
>> >> > I am currently testing wrapper 3.4.0 on solaris 64 bit machine.
>> >> > Under regular "physical" machine its already working for days and is
>> >> > fine
>> >> > (tried that on a couple of machines).
>> >> >
>> >> > However if i run the wrapper under vm instances (of vmware) i get
>> >> > abnormal
>> >> > shutdowns always both to my server and to the wrapper (after about 2
>> >> > hours
>> >> > both process are down).
>> >> >
>> >> > I'm attaching relevant logs:
>> >> > Note that I tested a configured vmware for reservation of cpu to one
>> of
>> >> > the
>> >> > vm instances then on that vm instance it seems that I don't have this
>> >> > shutdown, i have multiple vm virtual machines on the same physical
>> >> > machine
>> >> > and the shutdown happens on all of them (except for that instance
>> with
>> >> > that
>> >> > cpu reservation). I would like vm configuration to be working as
>> well
>> >> > because I'm thinking of having such a configuration possibly in
>> future
>> >> > in
>> >> > production.
>> >> > I also saw this over the web:
>> >> >
>> >> >
>> http://old.nabble.com/JVM-appears-hung:-VMware,-verbose-garbage-collection-td13470076.html
>> >> >
>> >> > Here are relevant logs if you could provide me with information of
>> why
>> >> > these
>> >> > abnormal shutdowns are happening:
>> >> >
>> >> > INFO | jvm 1 | 2010/04/20 19:43:30 | WrapperManager Debug: Java
>> VM
>> >> > Vendor : Sun Microsystems Inc.
>> >> > INFO | jvm 1 | 2010/04/20 19:43:30 | WrapperManager Debug: OS
>> >> > Name : SunOS
>> >> > INFO | jvm 1 | 2010/04/20 19:43:30 | WrapperManager Debug: OS
>> >> > Arch : amd64
>> >> > INFO | jvm 1 | 2010/04/20 19:43:30 | WrapperManager Debug:
>> >> > INFO | jvm 1 | 2010/04/20 19:43:30 | [Loaded
>> >> > org.tanukisoftware.wrapper.WrapperManager$5 from xxxxxxxxxx (i made
>> >> > this..
>> >> > xxxxxx)]
>> >> >
>> >> >
>> >> > DEBUG | wrapperp | 2010/04/20 22:16:09 | read a packet PING : ping
>> >> > DEBUG | wrapperp | 2010/04/20 22:16:13 | send a packet PING : ping
>> >> > INFO | jvm 1 | 2010/04/20 22:16:13 | WrapperManager Debug:
>> Received
>> >> > a
>> >> > packet PING : ping
>> >> > INFO | jvm 1 | 2010/04/20 22:16:13 | WrapperManager Debug: Send
>> a
>> >> > packet PING : ping
>> >> > DEBUG | wrapperp | 2010/04/20 22:16:13 | read a packet PING : ping
>> >> >
>> >> > .
>> >> > .
>> >> > .
>> >> >
>> >> > INFO | jvm 1 | 2010/04/20 22:21:13 | WrapperManager Debug: Read
>> >> > Timed
>> >> > out. (Last Ping was 298400 milliseconds ago)
>> >> >
>> >> > .
>> >> > .
>> >> > .
>> >> >
>> >> > INFO | jvm 1 | 2010/04/20 22:26:13 | WrapperManager Debug: Read
>> >> > Timed
>> >> > out. (Last Ping was 596700 milliseconds ago)
>> >> > INFO | jvm 1 | 2010/04/20 22:26:13 | WrapperManager: JVM did not
>> >> > exit.
>> >> > Give up.
>> >> >
>> >> > .
>> >> > .
>> >> > .
>> >> >
>> >> > INFO | jvm 1 | 2010/04/20 22:26:13 | WrapperManager Debug:
>> >> > ShutdownHook
>> >> > started
>> >> > INFO | jvm 1 | 2010/04/20 22:26:13 | WrapperManager Debug:
>> >> > WrapperManager.stop(0) called by thread: Wrapper-Shutdown-Hook
>> >> > INFO | jvm 1 | 2010/04/20 22:26:13 | WrapperManager Debug: Send
>> a
>> >> > packet STOP : 0
>> >> > INFO | jvm 1 | 2010/04/20 22:26:13 | WrapperManager Debug:
>> Stopped
>> >> > checking for control events.
>> >> > DEBUG | wrapperp | 2010/04/20 22:26:13 | read a packet STOP : 0
>> >> > DEBUG | wrapper | 2010/04/20 22:26:13 | JVM requested a shutdown.
>> (0)
>> >> > DEBUG | wrapper | 2010/04/20 22:26:13 | wrapperStopProcess(0)
>> called.
>> >> > DEBUG | wrapper | 2010/04/20 22:26:13 | Sending stop signal to JVM
>> >> > DEBUG | wrapperp | 2010/04/20 22:26:13 | send a packet STOP : NULL
>> >> >
>> >> > .
>> >> > .
>> >> > .
>> >> >
>> >> > INFO | jvm 1 | 2010/04/20 22:26:14 | WrapperManager Debug:
>> Thread,
>> >> > Wrapper-Shutdown-Hook, handling the shutdown process.
>> >> > INFO | jvm 1 | 2010/04/20 22:26:14 | WrapperManager Debug:
>> calling
>> >> > listener.stop()
>> >> > INFO | jvm 1 | 2010/04/20 22:26:14 | WrapperManager Debug: Send
>> a
>> >> > packet STOP_PENDING : 180000
>> >> >
>> >> > .
>> >> > .
>> >> > .
>> >> >
>> >> >
>> >> > DEBUG | wrapperp | 2010/04/20 22:26:14 | read a packet STOP_PENDING
>> :
>> >> > 180000
>> >> > DEBUG | wrapper | 2010/04/20 22:26:14 | JVM signalled a stop
>> pending
>> >> > with
>> >> > waitHint of 180000 millis.
>> >> >
>> >> > INFO | jvm 1 | 2010/04/20 22:26:14 | Start method stopped
>> >> >
>> >> > INFO | jvm 1 | 2010/04/20 22:26:22 | WrapperManager Debug:
>> returned
>> >> > from listener.stop() -> 0
>> >> > INFO | jvm 1 | 2010/04/20 22:26:22 | WrapperManager Debug:
>> >> > shutdownJVM(0) Thread:Wrapper-Shutdown-Hook
>> >> > INFO | jvm 1 | 2010/04/20 22:26:22 | WrapperManager Debug: wait
>> for
>> >> > 0
>> >> > shutdown locs to be released.
>> >> > INFO | jvm 1 | 2010/04/20 22:26:22 | WrapperManager Debug: Send
>> a
>> >> > packet STOPPED : 0
>> >> >
>> >> > DEBUG | wrapperp | 2010/04/20 22:26:22 | read a packet STOPPED : 0
>> >> > DEBUG | wrapper | 2010/04/20 22:26:22 | JVM signalled that it was
>> >> > stopped.
>> >> > INFO | jvm 1 | 2010/04/20 22:26:22 | WrapperManager Debug:
>> Closing
>> >> > socket.
>> >> > DEBUG | wrapperp | 2010/04/20 22:26:22 | socket read no code
>> (closed?).
>> >> >
>> >> > INFO | jvm 1 | 2010/04/20 22:26:23 | WrapperManager Debug:
>> >> > ShutdownHook
>> >> > complete
>> >> > DEBUG | wrapper | 2010/04/20 22:26:24 | Signal trapped. Details:
>> >> > DEBUG | wrapper | 2010/04/20 22:26:24 | signal number=18
>> (SIGCHLD),
>> >> > source="unknown"
>> >> > DEBUG | wrapper | 2010/04/20 22:26:24 | Received SIGCHLD, checking
>> JVM
>> >> > process status.
>> >> > DEBUG | wrapper | 2010/04/20 22:26:24 | JVM process exited with a
>> code
>> >> > of
>> >> > 1, setting the wrapper exit code to 1.
>> >> > DEBUG | wrapper | 2010/04/20 22:26:24 | JVM exited normally.
>> >> > STATUS | wrapper | 2010/04/20 22:26:24 | <-- Wrapper Stopped
>> >> >
>> >> >
>> >> > Note that at this stage i have both wrapper & my server processes
>> down.
>> >> >
>> >> > Thanks for the help..
>>
>>
>> ------------------------------------------------------------------------------
>> _______________________________________________
>> Wrapper-user mailing list
>> Wra...@li...
>> https://lists.sourceforge.net/lists/listinfo/wrapper-user
>>
>
>
|