river-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Peter Firmstone <j...@zeus.net.au>
Subject Re: Deadlock in MultiCastMonitorStopReplace test
Date Sun, 25 Nov 2012 08:55:00 GMT
Ok,

The unicast socket didn't have a timeout set, the harness was stuck on 
.join() waiting for the socket to close.

The tests still failing but it's no longer hanging.

Cheers,

Peter.


Peter Firmstone wrote:
> Ok this time I've got 3 separate jvm stacks and a stack trace, and the 
> test is deadlocked (cpu idle):
>
>     [java] Running 
> com/sun/jini/test/spec/lookupdiscovery/MulticastMonitorStopReplace.td
>     [java] Time is Sat Nov 24 16:47:24 EST 2012
>     [java] Starting test in separate process with command:
>     [java] /usr/jdk/jdk1.6.0_30/jre/bin/java 
> -Djava.security.manager=org.apache.river.api.security.CombinerSecurityManager 
> -Djava.security.policy=file:/opt/src/River_Fixed_2nd_Try/peterConcurrentPolicy/qa/harness/policy/defaulttest.policy

> -cp 
> /opt/src/River_Fixed_2nd_Try/peterConcurrentPolicy/qa/lib/jiniharness.jar:/opt/src/River_Fixed_2nd_Try/peterConcurrentPolicy/qa/lib/jinitests.jar:/opt/src/River_Fixed_2nd_Try/peterConcurrentPolicy/lib/jsk-platform.jar:/opt/src/River_Fixed_2nd_Try/peterConcurrentPolicy/lib/jsk-lib.jar:/opt/src/River_Fixed_2nd_Try/peterConcurrentPolicy/lib/high-scale-lib.jar:/opt/src/River_Fixed_2nd_Try/peterConcurrentPolicy/lib/reference-collections-1.0.1.jar

> -client 
> -Djava.ext.dirs=/usr/jdk/jdk1.6.0_30/jre/lib/ext:/usr/jdk/packages/lib/ext:/opt/src/River_Fixed_2nd_Try/peterConcurrentPolicy/qa/lib-ext:/opt/src/River_Fixed_2nd_Try/peterConcurrentPolicy/lib-ext

> -Dcom.sun.jini.jsk.port=9080 -Dcom.sun.jini.qa.port=9081 
> -Dcom.sun.jini.jsk.home=/opt/src/River_Fixed_2nd_Try/peterConcurrentPolicy 
> -Dcom.sun.jini.qa.home=/opt/src/River_Fixed_2nd_Try/peterConcurrentPolicy/qa 
> -Dcom.sun.jini.qa.harness.harnessJar=/opt/src/River_Fixed_2nd_Try/peterConcurrentPolicy/qa/lib/jiniharness.jar

> -Dcom.sun.jini.qa.harness.testJar=/opt/src/River_Fixed_2nd_Try/peterConcurrentPolicy/qa/lib/jinitests.jar

> -Dcom.sun.jini.qa.harness.runjiniserver=true 
> -Dcom.sun.jini.qa.harness.runkitserver=true 
> -Djava.security.properties=file:/opt/src/River_Fixed_2nd_Try/peterConcurrentPolicy/qa/harness/trust/dynamic-policy.properties

> -Dcom.sun.jini.qa.harness.testhosts= 
> -Djava.util.logging.config.file=/home/peter/logging.properties 
> -Dcom.sun.jini.test.home=/opt/src/River_Fixed_2nd_Try/peterConcurrentPolicy/qa 
> -Dcom.sun.jini.test.port=9082 
> -Dcom.sun.jini.qa.harness.policies=file:/opt/src/River_Fixed_2nd_Try/peterConcurrentPolicy/qa/src/com/sun/jini/test/resources/jinitest.policy

> -Djava.ext.dirs=/usr/jdk/jdk1.6.0_30/jre/lib/ext:/usr/jdk/packages/lib/ext:/opt/src/River_Fixed_2nd_Try/peterConcurrentPolicy/qa/lib-ext:/opt/src/River_Fixed_2nd_Try/peterConcurrentPolicy/lib-ext

> com.sun.jini.qa.harness.MasterTest 
> com/sun/jini/test/spec/lookupdiscovery/MulticastMonitorStopReplace.td
>
>     [java] java.rmi.UnmarshalException: exception unmarshalling 
> response; nested exception is:
>     [java]     java.io.IOException: I/O error reading from mux 
> connection: java.io.EOFException
>     [java]     at 
> net.jini.jeri.BasicInvocationHandler.invokeRemoteMethodOnce(BasicInvocationHandler.java:847)

>
>     [java]     at 
> net.jini.jeri.BasicInvocationHandler.invokeRemoteMethod(BasicInvocationHandler.java:659)

>
>     [java]     at 
> net.jini.jeri.BasicInvocationHandler.invoke(BasicInvocationHandler.java:528) 
>
>     [java]     at 
> com.sun.jini.test.services.lookupsimulator.$Proxy0.getLocator(Unknown 
> Source)
>     [java]     at 
> com.sun.jini.test.services.lookupsimulator.LookupSimulatorProxy.getLocator(LookupSimulatorProxy.java:134)

>
>     [java]     at 
> com.sun.jini.test.share.BaseQATest.startLookup(BaseQATest.java:1722)
>     [java]     at 
> com.sun.jini.test.share.BaseQATest.startInitLookups(BaseQATest.java:1538)
>     [java]     at 
> com.sun.jini.test.share.BaseQATest.setup(BaseQATest.java:1063)
>     [java]     at 
> com.sun.jini.test.spec.lookupdiscovery.AbstractBaseTest.setup(AbstractBaseTest.java:76)

>
>     [java]     at 
> com.sun.jini.test.spec.lookupdiscovery.Discovered.setup(Discovered.java:69) 
>
>     [java]     at 
> com.sun.jini.qa.harness.MasterTest.doTest(MasterTest.java:219)
>     [java]     at 
> com.sun.jini.qa.harness.MasterTest.main(MasterTest.java:144)
>     [java] Caused by: java.io.IOException: I/O error reading from mux 
> connection: java.io.EOFException
>     [java]     at 
> com.sun.jini.jeri.internal.mux.Session$MuxInputStream.read(Session.java:874) 
>
>     [java]     at 
> net.jini.jeri.connection.ConnectionManager$Outbound$Input.read(ConnectionManager.java:550)

>
>     [java]     at 
> net.jini.jeri.BasicObjectEndpoint.executeCall(BasicObjectEndpoint.java:410) 
>
>     [java]     at 
> net.jini.jeri.BasicInvocationHandler.invokeRemoteMethodOnce(BasicInvocationHandler.java:806)

>
>     [java]     ... 11 more
>     [java] Caused by: java.io.EOFException
>     [java]     at 
> com.sun.jini.jeri.internal.mux.StreamConnectionIO$Reader.run(StreamConnectionIO.java:264)

>
>     [java]     at 
> com.sun.jini.thread.ThreadPool$Task.run(ThreadPool.java:140)
>     [java]     at 
> com.sun.jini.thread.ThreadPool$Worker.run(ThreadPool.java:174)
>     [java]     at java.lang.Thread.run(Thread.java:662)
>
>    $ jstack 19013
>    2012-11-24 17:09:27
>    Full thread dump Java HotSpot(TM) Client VM (20.5-b03 mixed mode,
>    sharing):
>
>    "Attach Listener" daemon prio=3 tid=0x001cf400 nid=0x23 waiting on
>    condition [0x00000000]
>       java.lang.Thread.State: RUNNABLE
>
>    "unicast request" daemon prio=3 tid=0x0020d400 nid=0x1f runnable
>    [0xfa97f000]
>       java.lang.Thread.State: RUNNABLE
>            at java.net.PlainSocketImpl.socketAccept(Native Method)
>            at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:408)
>            - locked <0xc44f0090> (a java.net.SocksSocketImpl)
>            at java.net.ServerSocket.implAccept(ServerSocket.java:462)
>            at java.net.ServerSocket.accept(ServerSocket.java:430)
>            at
>    
> com.sun.jini.test.share.DiscoveryProtocolSimulator$UnicastThread.run(DiscoveryProtocolSimulator.java:616)

>
>
>    "RMI Scheduler(0)" daemon prio=3 tid=0x001e6800 nid=0x14 waiting on
>    condition [0xfb07f000]
>       java.lang.Thread.State: WAITING (parking)
>            at sun.misc.Unsafe.park(Native Method)
>            - parking to wait for  <0xc44f0220> (a
>    java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
>            at
>    java.util.concurrent.locks.LockSupport.park(LockSupport.java:156)
>            at
>    
> java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1987)

>
>            at java.util.concurrent.DelayQueue.take(DelayQueue.java:160)
>            at
>    
> java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:609)

>
>            at
>    
> java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:602)

>
>            at
>    
> java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947) 
>
>            at
>    
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907) 
>
>            at java.lang.Thread.run(Thread.java:662)
>
>    "GC Daemon" daemon prio=3 tid=0x001e1c00 nid=0x13 in Object.wait()
>    [0xfb17f000]
>       java.lang.Thread.State: TIMED_WAITING (on object monitor)
>            at java.lang.Object.wait(Native Method)
>            - waiting on <0xc95ef040> (a sun.misc.GC$LatencyLock)
>            at sun.misc.GC$Daemon.run(GC.java:100)
>            - locked <0xc95ef040> (a sun.misc.GC$LatencyLock)
>
>    "RMI RenewClean-[10.1.1.2:34487]" daemon prio=3 tid=0x00196800
>    nid=0x12 in Object.wait() [0xfb27f000]
>       java.lang.Thread.State: TIMED_WAITING (on object monitor)
>            at java.lang.Object.wait(Native Method)
>            - waiting on <0xc95eec50> (a 
> java.lang.ref.ReferenceQueue$Lock)
>            at 
> java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
>            - locked <0xc95eec50> (a java.lang.ref.ReferenceQueue$Lock)
>            at
>    
> sun.rmi.transport.DGCClient$EndpointEntry$RenewCleanThread.run(DGCClient.java:516) 
>
>            at java.lang.Thread.run(Thread.java:662)
>
>    "NonActivatableGroup_system-out" daemon prio=3 tid=0x0023c400
>    nid=0x10 runnable [0xfb37f000]
>       java.lang.Thread.State: RUNNABLE
>            at java.io.FileInputStream.readBytes(Native Method)
>            at java.io.FileInputStream.read(FileInputStream.java:220)
>            at
>    
> java.lang.UNIXProcess$DeferredCloseInputStream.read(UNIXProcess.java:227)
>            at
>    java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
>            at
>    java.io.BufferedInputStream.read1(BufferedInputStream.java:258)
>            at
>    java.io.BufferedInputStream.read(BufferedInputStream.java:317)
>            - locked <0xc95f1440> (a java.io.BufferedInputStream)
>            at java.io.FilterInputStream.read(FilterInputStream.java:90)
>            at com.sun.jini.qa.harness.Pipe.run(Pipe.java:119)
>            at java.lang.Thread.run(Thread.java:662)
>
>    "process reaper" daemon prio=3 tid=0x00239800 nid=0xf runnable
>    [0xfb47f000]
>       java.lang.Thread.State: RUNNABLE
>            at java.lang.UNIXProcess.waitForProcessExit(Native Method)
>            at java.lang.UNIXProcess.access$900(UNIXProcess.java:17)
>            at java.lang.UNIXProcess$2$1.run(UNIXProcess.java:86)
>
>    "Thread-5" prio=3 tid=0x00232400 nid=0xe runnable [0xfb57f000]
>       java.lang.Thread.State: RUNNABLE
>            at java.net.PlainSocketImpl.socketAccept(Native Method)
>            at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:408)
>            - locked <0xc95f16d0> (a java.net.SocksSocketImpl)
>            at java.net.ServerSocket.implAccept(ServerSocket.java:462)
>            at java.net.ServerSocket.accept(ServerSocket.java:430)
>            at com.sun.jini.tool.ClassServer.run(ClassServer.java:397)
>
>    "Thread-4" prio=3 tid=0x00230800 nid=0xd runnable [0xfb67f000]
>       java.lang.Thread.State: RUNNABLE
>            at java.net.PlainSocketImpl.socketAccept(Native Method)
>            at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:408)
>            - locked <0xc95f1900> (a java.net.SocksSocketImpl)
>            at java.net.ServerSocket.implAccept(ServerSocket.java:462)
>            at java.net.ServerSocket.accept(ServerSocket.java:430)
>            at com.sun.jini.tool.ClassServer.run(ClassServer.java:397)
>
>    "Thread-3" prio=3 tid=0x00226800 nid=0xc runnable [0xfb77f000]
>       java.lang.Thread.State: RUNNABLE
>            at java.net.PlainSocketImpl.socketAccept(Native Method)
>            at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:408)
>            - locked <0xc95f1b30> (a java.net.SocksSocketImpl)
>            at java.net.ServerSocket.implAccept(ServerSocket.java:462)
>            at java.net.ServerSocket.accept(ServerSocket.java:430)
>            at com.sun.jini.tool.ClassServer.run(ClassServer.java:397)
>
>    "no heart without soul" daemon prio=3 tid=0x00221800 nid=0xb waiting
>    on condition [0xfb87f000]
>       java.lang.Thread.State: TIMED_WAITING (sleeping)
>            at java.lang.Thread.sleep(Native Method)
>            at
>    
> com.sun.jini.qa.harness.HeartOfTheMachine.ticktack(HeartOfTheMachine.java:63) 
>
>            at
>    
> com.sun.jini.qa.harness.HeartOfTheMachine.access$000(HeartOfTheMachine.java:29) 
>
>            at
>    
> com.sun.jini.qa.harness.HeartOfTheMachine$1.run(HeartOfTheMachine.java:45) 
>
>            at java.lang.Thread.run(Thread.java:662)
>
>    "Low Memory Detector" daemon prio=3 tid=0x00169000 nid=0x9 runnable
>    [0x00000000]
>       java.lang.Thread.State: RUNNABLE
>
>    "C1 CompilerThread0" daemon prio=3 tid=0x00166800 nid=0x8 waiting on
>    condition [0x00000000]
>       java.lang.Thread.State: RUNNABLE
>
>    "Signal Dispatcher" daemon prio=3 tid=0x0015c000 nid=0x7 runnable
>    [0x00000000]
>       java.lang.Thread.State: RUNNABLE
>
>    "Thread-1" prio=3 tid=0x00150000 nid=0x6 waiting on condition
>    [0xfbd7f000]
>       java.lang.Thread.State: TIMED_WAITING (parking)
>            at sun.misc.Unsafe.park(Native Method)
>            - parking to wait for  <0xc9565ed0> (a
>    java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
>            at
>    java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:196)
>            at
>    
> java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2025)

>
>            at java.util.concurrent.DelayQueue.take(DelayQueue.java:164)
>            at
>    
> java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:609)

>
>            at
>    
> java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:602)

>
>            at
>    
> java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947) 
>
>            at
>    
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907) 
>
>            at java.lang.Thread.run(Thread.java:662)
>
>    "Finalizer" daemon prio=3 tid=0x00095000 nid=0x5 in Object.wait()
>    [0xfbe7f000]
>       java.lang.Thread.State: WAITING (on object monitor)
>            at java.lang.Object.wait(Native Method)
>            - waiting on <0xc9566028> (a 
> java.lang.ref.ReferenceQueue$Lock)
>            at 
> java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
>            - locked <0xc9566028> (a java.lang.ref.ReferenceQueue$Lock)
>            at 
> java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
>            at
>    java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)
>
>    "Reference Handler" daemon prio=3 tid=0x00093c00 nid=0x4 in
>    Object.wait() [0xfbf7f000]
>       java.lang.Thread.State: WAITING (on object monitor)
>            at java.lang.Object.wait(Native Method)
>            - waiting on <0xc95660b8> (a java.lang.ref.Reference$Lock)
>            at java.lang.Object.wait(Object.java:485)
>            at
>    java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
>            - locked <0xc95660b8> (a java.lang.ref.Reference$Lock)
>
>    "main" prio=3 tid=0x00031c00 nid=0x2 in Object.wait() [0xfe6ff000]
>       java.lang.Thread.State: WAITING (on object monitor)
>            at java.lang.Object.wait(Native Method)
>            - waiting on <0xc44f0010> (a
>    com.sun.jini.test.share.DiscoveryProtocolSimulator$UnicastThread)
>            at java.lang.Thread.join(Thread.java:1186)
>            - locked <0xc44f0010> (a
>    com.sun.jini.test.share.DiscoveryProtocolSimulator$UnicastThread)
>            at java.lang.Thread.join(Thread.java:1239)
>            at
>    
> com.sun.jini.test.share.DiscoveryProtocolSimulator.stopAnnouncements(DiscoveryProtocolSimulator.java:311)

>
>            at
>    
> com.sun.jini.test.share.DiscoveryProtocolSimulator.stopAnnouncements(DiscoveryProtocolSimulator.java:298)

>
>            at
>    com.sun.jini.test.share.BaseQATest.tearDown(BaseQATest.java:1090)
>            - locked <0xc95f6b88> (a 
> java.util.Collections$SynchronizedMap)
>            at
>    
> com.sun.jini.test.spec.lookupdiscovery.AbstractBaseTest.tearDown(AbstractBaseTest.java:111)

>
>            at
>    com.sun.jini.qa.harness.MasterTest.doTest(MasterTest.java:280)
>            at 
> com.sun.jini.qa.harness.MasterTest.main(MasterTest.java:144)
>
>    "VM Thread" prio=3 tid=0x0004dc00 nid=0x3 runnable
>
>    "VM Periodic Task Thread" prio=3 tid=0x0016cc00 nid=0xa waiting on
>    condition
>
>    JNI global references: 929
>
>    $ jstack 19008
>    2012-11-24 17:09:58
>    Full thread dump Java HotSpot(TM) Server VM (20.5-b03 mixed mode):
>
>    "Attach Listener" daemon prio=3 tid=0x0049a400 nid=0x15 waiting on
>    condition [0x00000000]
>       java.lang.Thread.State: RUNNABLE
>
>    "test-err" daemon prio=3 tid=0x00315000 nid=0x14 runnable [0xb64ff000]
>       java.lang.Thread.State: RUNNABLE
>            at java.io.FileInputStream.readBytes(Native Method)
>            at java.io.FileInputStream.read(FileInputStream.java:198)
>            at
>    
> java.lang.UNIXProcess$DeferredCloseInputStream.read(UNIXProcess.java:218)
>            at com.sun.jini.qa.harness.Pipe.run(Pipe.java:119)
>            at java.lang.Thread.run(Thread.java:662)
>
>    "test-out" daemon prio=3 tid=0x001f6800 nid=0x13 runnable [0xb65ff000]
>       java.lang.Thread.State: RUNNABLE
>            at java.io.FileInputStream.readBytes(Native Method)
>            at java.io.FileInputStream.read(FileInputStream.java:220)
>            at
>    
> java.lang.UNIXProcess$DeferredCloseInputStream.read(UNIXProcess.java:227)
>            at
>    java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
>            at
>    java.io.BufferedInputStream.read1(BufferedInputStream.java:258)
>            at
>    java.io.BufferedInputStream.read(BufferedInputStream.java:317)
>            - locked <0xe69b29a8> (a java.io.BufferedInputStream)
>            at java.io.FilterInputStream.read(FilterInputStream.java:90)
>            at com.sun.jini.qa.harness.Pipe.run(Pipe.java:119)
>            at java.lang.Thread.run(Thread.java:662)
>
>    "process reaper" daemon prio=3 tid=0x001f6400 nid=0x12 runnable
>    [0xb66ff000]
>       java.lang.Thread.State: RUNNABLE
>            at java.lang.UNIXProcess.waitForProcessExit(Native Method)
>            at java.lang.UNIXProcess.access$900(UNIXProcess.java:17)
>            at java.lang.UNIXProcess$2$1.run(UNIXProcess.java:86)
>
>    "Thread-1" prio=3 tid=0x0025e400 nid=0x11 waiting on condition
>    [0xb67ff000]
>       java.lang.Thread.State: TIMED_WAITING (parking)
>            at sun.misc.Unsafe.park(Native Method)
>            - parking to wait for  <0xe68ff988> (a
>    java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
>            at
>    java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:196)
>            at
>    
> java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2025)

>
>            at java.util.concurrent.DelayQueue.take(DelayQueue.java:164)
>            at
>    
> java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:609)

>
>            at
>    
> java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:602)

>
>            at
>    
> java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947) 
>
>            at
>    
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907) 
>
>            at java.lang.Thread.run(Thread.java:662)
>
>    "Keepalive" daemon prio=3 tid=0x00260000 nid=0x10 runnable 
> [0xb697f000]
>       java.lang.Thread.State: RUNNABLE
>            at java.net.PlainSocketImpl.socketAccept(Native Method)
>            at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:408)
>            - locked <0xe660c318> (a java.net.SocksSocketImpl)
>            at java.net.ServerSocket.implAccept(ServerSocket.java:462)
>            at java.net.ServerSocket.accept(ServerSocket.java:430)
>            at
>    
> com.sun.jini.qa.harness.MasterHarness$KeepAlivePort.run(MasterHarness.java:261) 
>
>            at java.lang.Thread.run(Thread.java:662)
>
>    "no heart without soul" daemon prio=3 tid=0x001f0c00 nid=0xf waiting
>    on condition [0xb6a7f000]
>       java.lang.Thread.State: TIMED_WAITING (sleeping)
>            at java.lang.Thread.sleep(Native Method)
>            at
>    
> com.sun.jini.qa.harness.HeartOfTheMachine.ticktack(HeartOfTheMachine.java:63) 
>
>            at
>    
> com.sun.jini.qa.harness.HeartOfTheMachine.access$000(HeartOfTheMachine.java:29) 
>
>            at
>    
> com.sun.jini.qa.harness.HeartOfTheMachine$1.run(HeartOfTheMachine.java:45) 
>
>            at java.lang.Thread.run(Thread.java:662)
>
>    "Low Memory Detector" daemon prio=3 tid=0x00123c00 nid=0xd runnable
>    [0x00000000]
>       java.lang.Thread.State: RUNNABLE
>
>    "C2 CompilerThread1" daemon prio=3 tid=0x00121800 nid=0xc waiting on
>    condition [0x00000000]
>       java.lang.Thread.State: RUNNABLE
>
>    "C2 CompilerThread0" daemon prio=3 tid=0x0011f000 nid=0xb waiting on
>    condition [0x00000000]
>       java.lang.Thread.State: RUNNABLE
>
>    "Signal Dispatcher" daemon prio=3 tid=0x0011d800 nid=0xa runnable
>    [0x00000000]
>       java.lang.Thread.State: RUNNABLE
>
>    "Finalizer" daemon prio=3 tid=0x0010d400 nid=0x9 in Object.wait()
>    [0xb707f000]
>       java.lang.Thread.State: WAITING (on object monitor)
>            at java.lang.Object.wait(Native Method)
>            - waiting on <0xe6401150> (a 
> java.lang.ref.ReferenceQueue$Lock)
>            at 
> java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
>            - locked <0xe6401150> (a java.lang.ref.ReferenceQueue$Lock)
>            at 
> java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
>            at
>    java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)
>
>    "Reference Handler" daemon prio=3 tid=0x00108800 nid=0x8 in
>    Object.wait() [0xb717f000]
>       java.lang.Thread.State: WAITING (on object monitor)
>            at java.lang.Object.wait(Native Method)
>            - waiting on <0xe6401050> (a java.lang.ref.Reference$Lock)
>            at java.lang.Object.wait(Object.java:485)
>            at
>    java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
>            - locked <0xe6401050> (a java.lang.ref.Reference$Lock)
>
>    "main" prio=3 tid=0x00032000 nid=0x2 in Object.wait() [0xfe37f000]
>       java.lang.Thread.State: WAITING (on object monitor)
>            at java.lang.Object.wait(Native Method)
>            - waiting on <0xe69b0788> (a java.lang.UNIXProcess)
>            at java.lang.Object.wait(Object.java:485)
>            at java.lang.UNIXProcess.waitFor(UNIXProcess.java:115)
>            - locked <0xe69b0788> (a java.lang.UNIXProcess)
>            at
>    
> com.sun.jini.qa.harness.MasterHarness.runTestOtherVM(MasterHarness.java:880) 
>
>            at
>    
> com.sun.jini.qa.harness.MasterHarness.access$200(MasterHarness.java:124)
>            at
>    
> com.sun.jini.qa.harness.MasterHarness$TestRunner.run(MasterHarness.java:610) 
>
>            at
>    com.sun.jini.qa.harness.MasterHarness.runTests(MasterHarness.java:437)
>            at com.sun.jini.qa.harness.QARunner.main(QARunner.java:67)
>
>    "VM Thread" prio=3 tid=0x00104800 nid=0x7 runnable
>
>    "GC task thread#0 (ParallelGC)" prio=3 tid=0x00039c00 nid=0x3 runnable
>
>    "GC task thread#1 (ParallelGC)" prio=3 tid=0x0003b000 nid=0x4 runnable
>
>    "GC task thread#2 (ParallelGC)" prio=3 tid=0x0003c400 nid=0x5 runnable
>
>    "GC task thread#3 (ParallelGC)" prio=3 tid=0x0003dc00 nid=0x6 runnable
>
>    "VM Periodic Task Thread" prio=3 tid=0x0012e400 nid=0xe waiting on
>    condition
>
>    JNI global references: 1329
>
>    $ jstack 19019
>    2012-11-24 17:10:36
>    Full thread dump Java HotSpot(TM) Server VM (20.5-b03 mixed mode):
>
>    "Attach Listener" daemon prio=3 tid=0x00231000 nid=0x22 waiting on
>    condition [0x00000000]
>       java.lang.Thread.State: RUNNABLE
>
>    "(JSK) KeepAlive" prio=3 tid=0x00523000 nid=0x17 waiting on
>    condition [0xb627f000]
>       java.lang.Thread.State: TIMED_WAITING (sleeping)
>            at java.lang.Thread.sleep(Native Method)
>            at
>    
> com.sun.jini.jeri.internal.runtime.JvmLifeSupport$2.run(JvmLifeSupport.java:130) 
>
>            at java.lang.Thread.run(Thread.java:662)
>
>    "(JSK) Reaper" daemon prio=3 tid=0x00758800 nid=0x16 in
>    Object.wait() [0xb637f000]
>       java.lang.Thread.State: WAITING (on object monitor)
>            at java.lang.Object.wait(Native Method)
>            - waiting on <0xe7908a18> (a 
> java.lang.ref.ReferenceQueue$Lock)
>            at 
> java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
>            - locked <0xe7908a18> (a java.lang.ref.ReferenceQueue$Lock)
>            at 
> java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
>            at
>    
> com.sun.jini.jeri.internal.runtime.ImplRefManager$Reaper.run(ImplRefManager.java:426)

>
>            at java.lang.Thread.run(Thread.java:662)
>
>    "(JSK)
>    
> TcpServerEndpoint.LH[ServerSocket[addr=0.0.0.0/0.0.0.0,port=0,localport=34492]] 
>
>    accept loop" daemon prio=3 tid=0x0034ac00 nid=0x15 runnable 
> [0xb647f000]
>       java.lang.Thread.State: RUNNABLE
>            at java.net.PlainSocketImpl.socketAccept(Native Method)
>            at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:408)
>            - locked <0xe7908ad0> (a java.net.SocksSocketImpl)
>            at java.net.ServerSocket.implAccept(ServerSocket.java:462)
>            at java.net.ServerSocket.accept(ServerSocket.java:430)
>            at
>    
> net.jini.jeri.tcp.TcpServerEndpoint$LH.executeAcceptLoop(TcpServerEndpoint.java:798)

>
>            at
>    
> net.jini.jeri.tcp.TcpServerEndpoint$LH.access$400(TcpServerEndpoint.java:736) 
>
>            at
>    
> net.jini.jeri.tcp.TcpServerEndpoint$LH$1.run(TcpServerEndpoint.java:768)
>            at 
> com.sun.jini.thread.ThreadPool$Task.run(ThreadPool.java:140)
>            at
>    com.sun.jini.thread.ThreadPool$Worker.run(ThreadPool.java:174)
>            at java.lang.Thread.run(Thread.java:662)
>
>    "RMI Scheduler(0)" daemon prio=3 tid=0x0063e400 nid=0x14 waiting on
>    condition [0xb657f000]
>       java.lang.Thread.State: TIMED_WAITING (parking)
>            at sun.misc.Unsafe.park(Native Method)
>            - parking to wait for  <0xbb886338> (a
>    java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
>            at
>    java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:196)
>            at
>    
> java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2025)

>
>            at java.util.concurrent.DelayQueue.take(DelayQueue.java:164)
>            at
>    
> java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:609)

>
>            at
>    
> java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:602)

>
>            at
>    
> java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947) 
>
>            at
>    
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907) 
>
>            at java.lang.Thread.run(Thread.java:662)
>
>    "DestroyJavaVM" prio=3 tid=0x00031800 nid=0x2 waiting on condition
>    [0x00000000]
>       java.lang.Thread.State: RUNNABLE
>
>    "Thread-1" prio=3 tid=0x00545800 nid=0x12 waiting on condition
>    [0xb677f000]
>       java.lang.Thread.State: TIMED_WAITING (parking)
>            at sun.misc.Unsafe.park(Native Method)
>            - parking to wait for  <0xe7913318> (a
>    java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
>            at
>    java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:196)
>            at
>    
> java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2025)

>
>            at java.util.concurrent.DelayQueue.take(DelayQueue.java:164)
>            at
>    
> java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:609)

>
>            at
>    
> java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:602)

>
>            at
>    
> java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947) 
>
>            at
>    
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907) 
>
>            at java.lang.Thread.run(Thread.java:662)
>
>    "GC Daemon" daemon prio=3 tid=0x00569400 nid=0x11 in Object.wait()
>    [0xb687f000]
>       java.lang.Thread.State: TIMED_WAITING (on object monitor)
>            at java.lang.Object.wait(Native Method)
>            - waiting on <0xbb803ff8> (a sun.misc.GC$LatencyLock)
>            at sun.misc.GC$Daemon.run(GC.java:100)
>            - locked <0xbb803ff8> (a sun.misc.GC$LatencyLock)
>
>    "RMI Reaper" prio=3 tid=0x002ca000 nid=0x10 in Object.wait()
>    [0xb697f000]
>       java.lang.Thread.State: WAITING (on object monitor)
>            at java.lang.Object.wait(Native Method)
>            - waiting on <0xbb800100> (a 
> java.lang.ref.ReferenceQueue$Lock)
>            at 
> java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
>            - locked <0xbb800100> (a java.lang.ref.ReferenceQueue$Lock)
>            at 
> java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
>            at
>    sun.rmi.transport.ObjectTable$Reaper.run(ObjectTable.java:333)
>            at java.lang.Thread.run(Thread.java:662)
>
>    "RMI TCP Accept-0" daemon prio=3 tid=0x003f6000 nid=0xf runnable
>    [0xb6a7f000]
>       java.lang.Thread.State: RUNNABLE
>            at java.net.PlainSocketImpl.socketAccept(Native Method)
>            at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:408)
>            - locked <0xbb8001a8> (a java.net.SocksSocketImpl)
>            at java.net.ServerSocket.implAccept(ServerSocket.java:462)
>            at java.net.ServerSocket.accept(ServerSocket.java:430)
>            at
>    
> sun.rmi.transport.tcp.TCPTransport$AcceptLoop.executeAcceptLoop(TCPTransport.java:369)

>
>            at
>    
> sun.rmi.transport.tcp.TCPTransport$AcceptLoop.run(TCPTransport.java:341)
>            at java.lang.Thread.run(Thread.java:662)
>
>    "Low Memory Detector" daemon prio=3 tid=0x00123c00 nid=0xd runnable
>    [0x00000000]
>       java.lang.Thread.State: RUNNABLE
>
>    "C2 CompilerThread1" daemon prio=3 tid=0x00121000 nid=0xc waiting on
>    condition [0x00000000]
>       java.lang.Thread.State: RUNNABLE
>
>    "C2 CompilerThread0" daemon prio=3 tid=0x0011e800 nid=0xb waiting on
>    condition [0x00000000]
>       java.lang.Thread.State: RUNNABLE
>
>    "Signal Dispatcher" daemon prio=3 tid=0x0011d000 nid=0xa runnable
>    [0x00000000]
>       java.lang.Thread.State: RUNNABLE
>
>    "Finalizer" daemon prio=3 tid=0x0010cc00 nid=0x9 in Object.wait()
>    [0xb707f000]
>       java.lang.Thread.State: WAITING (on object monitor)
>            at java.lang.Object.wait(Native Method)
>            - waiting on <0xbb808200> (a 
> java.lang.ref.ReferenceQueue$Lock)
>            at 
> java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
>            - locked <0xbb808200> (a java.lang.ref.ReferenceQueue$Lock)
>            at 
> java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
>            at
>    java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)
>
>    "Reference Handler" daemon prio=3 tid=0x00107c00 nid=0x8 in
>    Object.wait() [0xb717f000]
>       java.lang.Thread.State: WAITING (on object monitor)
>            at java.lang.Object.wait(Native Method)
>            - waiting on <0xbb800358> (a java.lang.ref.Reference$Lock)
>            at java.lang.Object.wait(Object.java:485)
>            at
>    java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
>            - locked <0xbb800358> (a java.lang.ref.Reference$Lock)
>
>    "VM Thread" prio=3 tid=0x00104000 nid=0x7 runnable
>
>    "GC task thread#0 (ParallelGC)" prio=3 tid=0x00039400 nid=0x3 runnable
>
>    "GC task thread#1 (ParallelGC)" prio=3 tid=0x0003a800 nid=0x4 runnable
>
>    "GC task thread#2 (ParallelGC)" prio=3 tid=0x0003bc00 nid=0x5 runnable
>
>    "GC task thread#3 (ParallelGC)" prio=3 tid=0x0003d000 nid=0x6 runnable
>
>    "VM Periodic Task Thread" prio=3 tid=0x00136000 nid=0xe waiting on
>    condition
>
>    JNI global references: 1485
>
>    $
>
>
>


Mime
View raw message