jmeter-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From unjc email <unjc.em...@gmail.com>
Subject Re: Remote testing does not exit
Date Thu, 12 Jul 2012 14:31:07 GMT
Hi Shmuel,

Thanks for your reply.  I have the same problem even I run the remote
call on the same machine that has Jmeter server running.

Here is the thread dump of the remote process when it "hangs".  It
seems like it's in sleeping mode?!

[root@bin]# 2012-07-12 14:25:27
Full thread dump OpenJDK 64-Bit Server VM (20.0-b12 mixed mode):

"Thread-1" daemon prio=10 tid=0x00007f958c001000 nid=0x951
sleeping[0x00007f95f87f7000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
 at java.lang.Thread.sleep(Native Method)
 at org.apache.jmeter.JMeter$ListenToTest.run(JMeter.java:966)
 at java.lang.Thread.run(Thread.java:679)

"DestroyJavaVM" prio=10 tid=0x00007f95fc007000 nid=0x934 waiting on
condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"RMI TCP Connection(1)-192.168.1.12" daemon prio=10
tid=0x00007f9594001000 nid=0x94d runnable [0x00007f95f88f8000]
   java.lang.Thread.State: RUNNABLE
 at java.net.SocketInputStream.socketRead0(Native Method)
 at java.net.SocketInputStream.read(SocketInputStream.java:146)
 at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
 at java.io.BufferedInputStream.read(BufferedInputStream.java:254)
 - locked <0x00000000e21e9028> (a java.io.BufferedInputStream)
 at java.io.FilterInputStream.read(FilterInputStream.java:83)
 at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
 at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:808)
 at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:667)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
 at java.lang.Thread.run(Thread.java:679)

"RMI Reaper" prio=10 tid=0x00007f95fc257000 nid=0x94b in Object.wait()
[0x00007f95f89f9000]
   java.lang.Thread.State: WAITING (on object monitor)
 at java.lang.Object.wait(Native Method)
 - waiting on <0x00000000e19804a8> (a java.lang.ref.ReferenceQueue$Lock)
 at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:133)
 - locked <0x00000000e19804a8> (a java.lang.ref.ReferenceQueue$Lock)
 at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:149)
 at sun.rmi.transport.ObjectTable$Reaper.run(ObjectTable.java:350)
 at java.lang.Thread.run(Thread.java:679)

"RMI TCP Accept-0" daemon prio=10 tid=0x00007f95fc35b000 nid=0x94a
runnable [0x00007f95f8afa000]
   java.lang.Thread.State: RUNNABLE
 at java.net.PlainSocketImpl.socketAccept(Native Method)
 at java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:375)
 at java.net.ServerSocket.implAccept(ServerSocket.java:470)
 at java.net.ServerSocket.accept(ServerSocket.java:438)
 at sun.rmi.transport.tcp.TCPTransport$AcceptLoop.executeAcceptLoop(TCPTransport.java:387)
 at sun.rmi.transport.tcp.TCPTransport$AcceptLoop.run(TCPTransport.java:359)
 at java.lang.Thread.run(Thread.java:679)

"GC Daemon" daemon prio=10 tid=0x00007f95fc1fd000 nid=0x948 in
Object.wait() [0x00007f95f8bfb000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
 at java.lang.Object.wait(Native Method)
 - waiting on <0x00000000a4c0fc58> (a sun.misc.GC$LatencyLock)
 at sun.misc.GC$Daemon.run(GC.java:117)
 - locked <0x00000000a4c0fc58> (a sun.misc.GC$LatencyLock)

"RMI RenewClean-[192.168.1.12:52010]" daemon prio=10
tid=0x00007f95fc225000 nid=0x947 in Object.wait() [0x00007f95f8cfc000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
 at java.lang.Object.wait(Native Method)
 - waiting on <0x00000000a4c17be0> (a java.lang.ref.ReferenceQueue$Lock)
 at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:133)
 - locked <0x00000000a4c17be0> (a java.lang.ref.ReferenceQueue$Lock)
 at sun.rmi.transport.DGCClient$EndpointEntry$RenewCleanThread.run(DGCClient.java:534)
 at java.lang.Thread.run(Thread.java:679)

"RMI Scheduler(0)" daemon prio=10 tid=0x00007f95fc251800 nid=0x946
waiting on condition [0x00007f95f8dfd000]
   java.lang.Thread.State: TIMED_WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000000a4c08078> (a
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
 at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
 at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2081)
 at java.util.concurrent.DelayQueue.take(DelayQueue.java:193)
 at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:688)
 at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:681)
 at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1043)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1103)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
 at java.lang.Thread.run(Thread.java:679)

"Low Memory Detector" daemon prio=10 tid=0x00007f95fc0a4000 nid=0x943
runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C2 CompilerThread1" daemon prio=10 tid=0x00007f95fc0a2000 nid=0x942
waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C2 CompilerThread0" daemon prio=10 tid=0x00007f95fc09f000 nid=0x941
waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Signal Dispatcher" daemon prio=10 tid=0x00007f95fc09d800 nid=0x940
waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Finalizer" daemon prio=10 tid=0x00007f95fc07f000 nid=0x93f in
Object.wait() [0x00007f9600a40000]
   java.lang.Thread.State: WAITING (on object monitor)
 at java.lang.Object.wait(Native Method)
 - waiting on <0x00000000a4c0fe98> (a java.lang.ref.ReferenceQueue$Lock)
 at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:133)
 - locked <0x00000000a4c0fe98> (a java.lang.ref.ReferenceQueue$Lock)
 at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:149)
 at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:177)

"Reference Handler" daemon prio=10 tid=0x00007f95fc07d000 nid=0x93e in
Object.wait() [0x00007f9600b41000]
   java.lang.Thread.State: WAITING (on object monitor)
 at java.lang.Object.wait(Native Method)
 - waiting on <0x00000000a4c0fc38> (a java.lang.ref.Reference$Lock)
 at java.lang.Object.wait(Object.java:502)
 at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:133)
 - locked <0x00000000a4c0fc38> (a java.lang.ref.Reference$Lock)

"VM Thread" prio=10 tid=0x00007f95fc076000 nid=0x93d runnable

"GC task thread#0 (ParallelGC)" prio=10 tid=0x00007f95fc011800
nid=0x935 runnable

"GC task thread#1 (ParallelGC)" prio=10 tid=0x00007f95fc013800
nid=0x936 runnable

"GC task thread#2 (ParallelGC)" prio=10 tid=0x00007f95fc015800
nid=0x937 runnable

"GC task thread#3 (ParallelGC)" prio=10 tid=0x00007f95fc017000
nid=0x938 runnable

"GC task thread#4 (ParallelGC)" prio=10 tid=0x00007f95fc019000
nid=0x939 runnable

"GC task thread#5 (ParallelGC)" prio=10 tid=0x00007f95fc01b000
nid=0x93a runnable

"GC task thread#6 (ParallelGC)" prio=10 tid=0x00007f95fc01d000
nid=0x93b runnable

"GC task thread#7 (ParallelGC)" prio=10 tid=0x00007f95fc01e800
nid=0x93c runnable

"VM Periodic Task Thread" prio=10 tid=0x00007f95fc0af000 nid=0x944
waiting on condition

JNI global references: 1144

Heap
 PSYoungGen      total 27264K, used 9910K [0x00000000e1960000,
0x00000000e37c0000, 0x0000000100000000)
  eden space 23424K, 42% used
[0x00000000e1960000,0x00000000e230db80,0x00000000e3040000)
  from space 3840K, 0% used
[0x00000000e3040000,0x00000000e3040000,0x00000000e3400000)
  to   space 3840K, 0% used
[0x00000000e3400000,0x00000000e3400000,0x00000000e37c0000)
 PSOldGen        total 62336K, used 1176K [0x00000000a4c00000,
0x00000000a88e0000, 0x00000000e1960000)
  object space 62336K, 1% used
[0x00000000a4c00000,0x00000000a4d26390,0x00000000a88e0000)
 PSPermGen       total 21248K, used 11732K [0x000000009a600000,
0x000000009bac0000, 0x00000000a4c00000)
  object space 21248K, 55% used
[0x000000009a600000,0x000000009b175038,0x000000009bac0000)



Thanks,
Jacky

On Thu, Jul 12, 2012 at 7:21 AM, Shmuel Krakower <shmulikk@gmail.com> wrote:
> Hi,
> I usually have problems like this when I have firewalls between the master
> and the slave.
> Anyway - I'd suggest you to take a thread dump out of JMeter's JVM, both
> for the master and the slave and post them here / in bugzilla.
> This info will help to understand why this hanging happens.
>
> (google for thread+dump+jvm)
>
> Best Regards,
> Shmuel.
>
> On Wed, Jul 11, 2012 at 7:23 PM, unjc email <unjc.email@gmail.com> wrote:
>
>> Hello there,
>>
>> I encounter a problem with remote testing.  I have two jmeter servers
>> running.  When I start a remote nongui testing using a simple test
>> plan, the remote process does not exit even though after the tests are
>> completed successfully on both remote servers.  The process seems hung
>> there and didn't get terminated.  I have tried "-X" option as well,
>> and the problem persists even the remote jmeter servers do exit after
>> the completion of the test.  The version of Jmeter I am using is
>> Version 2.6 r1237317.  All machines have the same version of Jmeter
>> with java "1.6.0_24".  Please advise the proper way to run the remote
>> testing.
>>
>>
>> Console Output:
>> [root@bin]# java -jar ApacheJMeter.jar -n -t test.jmx -R
>> 192.168.1.12,192.168.1.13
>> Created the tree successfully using test.jmx
>> Configuring remote engine for 192.168.1.12
>> Using remote object: UnicastRef [liveRef:
>> [endpoint:[192.168.1.12:52010](remote),objID:[-310e3d54:13872d7fdb9:-7fff,
>> 4757255373403868018]]]
>> Configuring remote engine for 192.168.1.13
>> Using remote object: UnicastRef [liveRef:
>> [endpoint:[192.168.1.13:55110](remote),objID:[-1174d7:138721a1ddf:-7fff,
>> -6734490503268367282]]]
>> Starting remote engines
>> Starting the test @ Wed Jul 11 16:07:37 GMT-00:00 2012 (1342022857988)
>> Starting the test on host 192.168.1.12 @ Wed Jul 11 16:07:38 GMT-00:00
>> 2012 (1342022858153)
>> Remote engines have been started
>> Finished the test on host 192.168.1.12 @ Wed Jul 11 16:07:38 GMT-00:00
>> 2012 (1342022858194)
>> Tidying up remote @ Wed Jul 11 16:07:38 GMT-00:00 2012 (1342022858227)
>>
>> ^C
>>
>>
>> test.jmx:
>> <?xml version="1.0" encoding="UTF-8"?>
>> <jmeterTestPlan version="1.2" properties="2.2">
>>   <hashTree>
>>     <TestPlan guiclass="TestPlanGui" testclass="TestPlan"
>> testname="Test Plan" enabled="true">
>>       <stringProp name="TestPlan.comments"></stringProp>
>>       <boolProp name="TestPlan.functional_mode">false</boolProp>
>>       <boolProp name="TestPlan.serialize_threadgroups">false</boolProp>
>>       <elementProp name="TestPlan.user_defined_variables"
>> elementType="Arguments" guiclass="ArgumentsPanel"
>> testclass="Arguments" testname="User Defined Variables"
>> enabled="true">
>>         <collectionProp name="Arguments.arguments"/>
>>       </elementProp>
>>       <stringProp name="TestPlan.user_define_classpath"></stringProp>
>>     </TestPlan>
>>     <hashTree>
>>       <ThreadGroup guiclass="ThreadGroupGui" testclass="ThreadGroup"
>> testname="Thread Group" enabled="true">
>>         <stringProp
>> name="ThreadGroup.on_sample_error">continue</stringProp>
>>         <elementProp name="ThreadGroup.main_controller"
>> elementType="LoopController" guiclass="LoopControlPanel"
>> testclass="LoopController" testname="Loop Controller" enabled="true">
>>           <boolProp name="LoopController.continue_forever">false</boolProp>
>>           <stringProp name="LoopController.loops">1</stringProp>
>>         </elementProp>
>>         <stringProp name="ThreadGroup.num_threads">1</stringProp>
>>         <stringProp name="ThreadGroup.ramp_time">1</stringProp>
>>         <longProp name="ThreadGroup.start_time">1342019550000</longProp>
>>         <longProp name="ThreadGroup.end_time">1342019550000</longProp>
>>         <boolProp name="ThreadGroup.scheduler">false</boolProp>
>>         <stringProp name="ThreadGroup.duration"></stringProp>
>>         <stringProp name="ThreadGroup.delay"></stringProp>
>>       </ThreadGroup>
>>       <hashTree>
>>         <HTTPSamplerProxy guiclass="HttpTestSampleGui"
>> testclass="HTTPSamplerProxy" testname="HTTP Request" enabled="true">
>>           <elementProp name="HTTPsampler.Arguments"
>> elementType="Arguments" guiclass="HTTPArgumentsPanel"
>> testclass="Arguments" testname="User Defined Variables"
>> enabled="true">
>>             <collectionProp name="Arguments.arguments"/>
>>           </elementProp>
>>           <stringProp name="HTTPSampler.domain">192.168.1.11</stringProp>
>>           <stringProp name="HTTPSampler.port"></stringProp>
>>           <stringProp name="HTTPSampler.connect_timeout"></stringProp>
>>           <stringProp name="HTTPSampler.response_timeout"></stringProp>
>>           <stringProp name="HTTPSampler.protocol">http</stringProp>
>>           <stringProp name="HTTPSampler.contentEncoding"></stringProp>
>>           <stringProp name="HTTPSampler.path">index.html</stringProp>
>>           <stringProp name="HTTPSampler.method">GET</stringProp>
>>           <boolProp name="HTTPSampler.follow_redirects">true</boolProp>
>>           <boolProp name="HTTPSampler.auto_redirects">false</boolProp>
>>           <boolProp name="HTTPSampler.use_keepalive">true</boolProp>
>>           <boolProp name="HTTPSampler.DO_MULTIPART_POST">false</boolProp>
>>           <boolProp name="HTTPSampler.monitor">false</boolProp>
>>           <stringProp name="HTTPSampler.embedded_url_re"></stringProp>
>>         </HTTPSamplerProxy>
>>         <hashTree/>
>>       </hashTree>
>>     </hashTree>
>>   </hashTree>
>> </jmeterTestPlan>
>>
>>
>>
>> Thanks,
>> Jacky
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-unsubscribe@jmeter.apache.org
>> For additional commands, e-mail: user-help@jmeter.apache.org
>>
>>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@jmeter.apache.org
For additional commands, e-mail: user-help@jmeter.apache.org


Mime
View raw message