jackrabbit-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Bruno Coelho <bruno.coe...@pmelink.pt>
Subject Re: problem shuting down tomcat
Date Tue, 22 Sep 2009 14:46:08 GMT
I don't know how to tell apart wich ones are daemons or not... I just  
have the total number of thread and the total number of daemon threads  
(using jconsole)...
so the best I can give you is a threadump of all threads. sorry about  
this.

thanks a lot.

cheers,

bruno coelho


2009-09-22 15:41:15
Full thread dump Java HotSpot(TM) Client VM (1.5.0_20-141 mixed mode,  
sharing):

"RMI TCP Connection(11)-10.100.131.165" - Thread t@49
    java.lang.Thread.State: RUNNABLE
         at sun.management.ThreadImpl.getThreadInfo0(Native Method)
         at sun.management.ThreadImpl.getThreadInfo(ThreadImpl.java:142)
         at sun.management.ThreadImpl.getThreadInfo(ThreadImpl.java:120)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at  
sun 
.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java: 
39)
         at  
sun 
.reflect 
.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: 
25)
         at java.lang.reflect.Method.invoke(Method.java:592)
         at sun.management.MXBeanSupport.invoke(MXBeanSupport.java:632)
         at sun.management.MXBeanSupport.invoke(MXBeanSupport.java:94)
         at  
com 
.sun 
.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java: 
213)
         at  
com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:220)
         at  
com 
.sun 
.jmx 
.interceptor 
.DefaultMBeanServerInterceptor 
.invoke(DefaultMBeanServerInterceptor.java:815)
         at  
com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:784)
         at  
javax 
.management 
.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1410)
         at javax.management.remote.rmi.RMIConnectionImpl.access 
$100(RMIConnectionImpl.java:81)
         at javax.management.remote.rmi.RMIConnectionImpl 
$PrivilegedOperation.run(RMIConnectionImpl.java:1247)
         at  
javax 
.management 
.remote 
.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java: 
1343)
         at  
javax 
.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java: 
784)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at  
sun 
.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java: 
39)
         at  
sun 
.reflect 
.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: 
25)
         at java.lang.reflect.Method.invoke(Method.java:592)
         at  
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
         at sun.rmi.transport.Transport$1.run(Transport.java:153)
         at java.security.AccessController.doPrivileged(Native Method)
         at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
         at  
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:466)
         at sun.rmi.transport.tcp.TCPTransport 
$ConnectionHandler.run(TCPTransport.java:707)
         at java.lang.Thread.run(Thread.java:613)

"JMX server connection timeout 48" - Thread t@48
    java.lang.Thread.State: TIMED_WAITING on [I@fe3515
         at java.lang.Object.wait(Native Method)
         at com.sun.jmx.remote.internal.ServerCommunicatorAdmin 
$Timeout.run(ServerCommunicatorAdmin.java:150)
         at java.lang.Thread.run(Thread.java:613)

"RMI TCP Connection(10)-10.100.131.165" - Thread t@47
    java.lang.Thread.State: RUNNABLE
         at java.net.SocketInputStream.socketRead0(Native Method)
         at java.net.SocketInputStream.read(SocketInputStream.java:129)
         at java.io.BufferedInputStream.fill(BufferedInputStream.java: 
218)
         at java.io.BufferedInputStream.read(BufferedInputStream.java: 
235)
         at java.io.FilterInputStream.read(FilterInputStream.java:66)
         at  
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:448)
         at sun.rmi.transport.tcp.TCPTransport 
$ConnectionHandler.run(TCPTransport.java:707)
         at java.lang.Thread.run(Thread.java:613)

"DestroyJavaVM" - Thread t@46
    java.lang.Thread.State: RUNNABLE

"http-8180-1" - Thread t@40
    java.lang.Thread.State: WAITING on  
org.apache.tomcat.util.net.JIoEndpoint$Worker@4f092f
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:474)
         at org.apache.tomcat.util.net.JIoEndpoint 
$Worker.await(JIoEndpoint.java:423)
         at org.apache.tomcat.util.net.JIoEndpoint 
$Worker.run(JIoEndpoint.java:449)
         at java.lang.Thread.run(Thread.java:613)

"RMI LeaseChecker" - Thread t@28
    java.lang.Thread.State: TIMED_WAITING
         at java.lang.Thread.sleep(Native Method)
         at sun.rmi.transport.DGCImpl$LeaseChecker.run(DGCImpl.java:310)
         at java.lang.Thread.run(Thread.java:613)

"TP-Processor4" - Thread t@23
    java.lang.Thread.State: WAITING on  
org.apache.jk.common.ChannelSocket@e417e7
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:474)
         at  
org.apache.jk.common.ChannelSocket.accept(ChannelSocket.java:301)
         at  
org 
.apache.jk.common.ChannelSocket.acceptConnections(ChannelSocket.java: 
661)
         at org.apache.jk.common.ChannelSocket 
$SocketAcceptor.runIt(ChannelSocket.java:872)
         at org.apache.tomcat.util.threads.ThreadPool 
$ControlRunnable.run(ThreadPool.java:690)
         at java.lang.Thread.run(Thread.java:613)

"http-8180-Acceptor-0" - Thread t@19
    java.lang.Thread.State: TIMED_WAITING
         at java.lang.Thread.sleep(Native Method)
         at org.apache.tomcat.util.net.JIoEndpoint 
$Acceptor.run(JIoEndpoint.java:309)
         at java.lang.Thread.run(Thread.java:613)

"RMI TCP Accept-9999" - Thread t@17
    java.lang.Thread.State: RUNNABLE
         at java.net.PlainSocketImpl.socketAccept(Native Method)
         at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
         at java.net.ServerSocket.implAccept(ServerSocket.java:450)
         at java.net.ServerSocket.accept(ServerSocket.java:421)
         at sun.rmi.transport.tcp.TCPTransport.run(TCPTransport.java: 
340)
         at java.lang.Thread.run(Thread.java:613)

"GC Daemon" - Thread t@16
    java.lang.Thread.State: TIMED_WAITING on sun.misc.GC 
$LatencyLock@dd475a
         at java.lang.Object.wait(Native Method)
         at sun.misc.GC$Daemon.run(GC.java:100)

"RMI Reaper" - Thread t@15
    java.lang.Thread.State: WAITING on java.lang.ref.ReferenceQueue 
$Lock@779e93
         at java.lang.Object.wait(Native Method)
         at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:120)
         at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:136)
         at sun.rmi.transport.ObjectTable$Reaper.run(ObjectTable.java: 
336)
         at java.lang.Thread.run(Thread.java:613)

"RMI TCP Accept-0" - Thread t@14
    java.lang.Thread.State: RUNNABLE
         at java.net.PlainSocketImpl.socketAccept(Native Method)
         at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
         at java.net.ServerSocket.implAccept(ServerSocket.java:450)
         at java.net.ServerSocket.accept(ServerSocket.java:421)
         at sun.rmi.transport.tcp.TCPTransport.run(TCPTransport.java: 
340)
         at java.lang.Thread.run(Thread.java:613)

"RMI TCP Accept-0" - Thread t@9
    java.lang.Thread.State: RUNNABLE
         at java.net.PlainSocketImpl.socketAccept(Native Method)
         at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
         at java.net.ServerSocket.implAccept(ServerSocket.java:450)
         at java.net.ServerSocket.accept(ServerSocket.java:421)
         at sun.management.jmxremote.LocalRMIServerSocketFactory 
$1.accept(LocalRMIServerSocketFactory.java:31)
         at sun.rmi.transport.tcp.TCPTransport.run(TCPTransport.java: 
340)
         at java.lang.Thread.run(Thread.java:613)

"Timer-0" - Thread t@8
    java.lang.Thread.State: TIMED_WAITING on java.util.TaskQueue@4bc5a5
         at java.lang.Object.wait(Native Method)
         at java.util.TimerThread.mainLoop(Timer.java:509)
         at java.util.TimerThread.run(Timer.java:462)

"Signal Dispatcher" - Thread t@4
    java.lang.Thread.State: RUNNABLE

"Finalizer" - Thread t@3
    java.lang.Thread.State: WAITING on java.lang.ref.ReferenceQueue 
$Lock@9cfedf
         at java.lang.Object.wait(Native Method)
         at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:120)
         at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:136)
         at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java: 
159)

"Reference Handler" - Thread t@2
    java.lang.Thread.State: WAITING on java.lang.ref.Reference 
$Lock@210089
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:474)
         at java.lang.ref.Reference 
$ReferenceHandler.run(Reference.java:116)


On Sep 22, 2009, at 3:36 PM, Sébastien Launay wrote:

> Hi Bruno,
>
> Le 22/09/2009 16:10, Bruno Coelho a écrit :
>> with the jconsole I can see that after the shutdown script it's  
>> called
>> there are still 17 or 19 threads running but only 15 or 17 are daemon
>> threads,
>> the other ones I don't know what they are.
>>
>> I suspect that the problem is related with this 2 threads that only
>> after they desapear the tomcat will die.
> Can you provide details about these 2 non deamon threads like name
> and stack trace ?
>
> --
> Sébastien Launay


Mime
View raw message