jmeter-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sonam Chauhan" <sonam.chau...@ce.com.au>
Subject RE: JMeter not shutting down in non-gui mode
Date Tue, 07 Apr 2009 23:55:01 GMT
With non-GUI testing, I've seen JMeter 'hang' when the 'system under
test' hangs due to some bug, but does not close the connection to the
JMeter client. 

You can try using sampler-specific timeout settings but I don't have any
experience with those. 

The way I've done it is run JMeter from a Perl wrapper which forks off a
watchdog process with a user-definable timeout period and waits for the
JMeter processes to complete. If the watchdog finds that the wrapper
process (and by implication, its JMeter child processes) are still alive
at the end of the kill timeout period, a Perl library is used to kill
the entire process tree. I hope to release related code in a couple of
days (planned to earlier but hit issues in sourceforge - will try
googlecode). 

Regards,
Sonam Chauhan

-----Original Message-----
From: Bob Cotton [mailto:bob.cotton@rallydev.com] 
Sent: Saturday, 4 April 2009 10:24 AM
To: jmeter-user
Subject: JMeter not shutting down in non-gui mode

[One more time]
JMeter 2.3.2
Java 1.5 OS X Leopard
/usr/bin/java -server -Xms256m -Xmx2g -XX:NewSize=128m
-XX:MaxNewSize=128m
-XX:MaxTenuringThreshold=2 -Dsun.rmi.dgc.client.gcInterval=600000
-Dsun.rmi.dgc.server.gcInterval=600000 -XX:PermSize=64m
-XX:MaxPermSize=64m
-jar jakarta-jmeter-2.3.2/bin/ApacheJMeter.jar -j jmeter.log -t
jmeter-scenarios/loadtest-no-wait-constant-transactions-with-delete.jmx
-p
../resources/filters/tbuser1.properties -n -l
loadtest_germanium-43-2009-04-03_00-01-10/load-test.jtl
-Djmeter.save.saveservice.output_format=csv -Jtest_duration=3600
-Jfinal_thread_count=7 -Jthread_start_interval=100

We run our load test under hudson on a nightly basis.

Jmeter is configured to run for a set amount of time, usually 1 hour

On most nights, jmeter will not shutdown and hang the build. Here's the
kill
-QUIT from the process.

see anything strange, or should I employ some other means to kill the
process?

Thanks
-bob

Full thread dump Java HotSpot(TM) Server VM (1.5.0_16-133 mixed mode):

"Thread Group 1-6" prio=5 tid=0x0021ccc0 nid=0x83a000 runnable
[0xb19e9000..0xb19e9d90]



	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.read1(BufferedInputStream.java:256)



	at
java.io.BufferedInputStream.read(BufferedInputStream.java:313)
	- locked <0x129e2890> (a java.io.BufferedInputStream)
	at
sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:681)
	at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:626)



	at
sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnec
tion.java:957)
	- locked <0x129e28e0> (a
sun.net.www.protocol.http.HttpURLConnection)
	at
sun.net.www.protocol.http.HttpURLConnection.getHeaderField(HttpURLConnec
tion.java:1923)



	at
java.net.URLConnection.getHeaderFieldInt(URLConnection.java:573)
	at
java.net.URLConnection.getContentLength(URLConnection.java:468)
	at
org.apache.jmeter.protocol.http.sampler.HTTPSampler.readResponse(HTTPSam
pler.java:203)



	at
org.apache.jmeter.protocol.http.sampler.HTTPSampler.sample(HTTPSampler.j
ava:463)
	at
org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSampl
erBase.java:1021)
	at
org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSampl
erBase.java:1007)



	at
org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:290)
	at java.lang.Thread.run(Thread.java:613)

"Thread Group 1-2" prio=5 tid=0x0021a460 nid=0x823600 runnable
[0xb107d000..0xb107dd90]



	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.read1(BufferedInputStream.java:256)



	at
java.io.BufferedInputStream.read(BufferedInputStream.java:313)
	- locked <0x129e4aa8> (a java.io.BufferedInputStream)
	at
sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:681)
	at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:626)



	at
sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnec
tion.java:957)
	- locked <0x129e4af8> (a
sun.net.www.protocol.http.HttpURLConnection)
	at
sun.net.www.protocol.http.HttpURLConnection.getHeaderField(HttpURLConnec
tion.java:1923)



	at
java.net.URLConnection.getHeaderFieldInt(URLConnection.java:573)
	at
java.net.URLConnection.getContentLength(URLConnection.java:468)
	at
org.apache.jmeter.protocol.http.sampler.HTTPSampler.readResponse(HTTPSam
pler.java:203)



	at
org.apache.jmeter.protocol.http.sampler.HTTPSampler.sample(HTTPSampler.j
ava:463)
	at
org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSampl
erBase.java:1021)
	at
org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSampl
erBase.java:1007)



	at
org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:290)
	at java.lang.Thread.run(Thread.java:613)

"Thread Group 1-1" prio=5 tid=0x00219410 nid=0x822800 runnable
[0xb0eff000..0xb0effd90]



	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.read1(BufferedInputStream.java:256)



	at
java.io.BufferedInputStream.read(BufferedInputStream.java:313)
	- locked <0x129e6cc0> (a java.io.BufferedInputStream)
	at
sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:681)
	at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:626)



	at
sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnec
tion.java:957)
	- locked <0x129e6d10> (a
sun.net.www.protocol.http.HttpURLConnection)
	at
sun.net.www.protocol.http.HttpURLConnection.getHeaderField(HttpURLConnec
tion.java:1923)



	at
java.net.URLConnection.getHeaderFieldInt(URLConnection.java:573)
	at
java.net.URLConnection.getContentLength(URLConnection.java:468)
	at
org.apache.jmeter.protocol.http.sampler.HTTPSampler.readResponse(HTTPSam
pler.java:203)



	at
org.apache.jmeter.protocol.http.sampler.HTTPSampler.sample(HTTPSampler.j
ava:463)
	at
org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSampl
erBase.java:1021)
	at
org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSampl
erBase.java:1007)



	at
org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:290)
	at java.lang.Thread.run(Thread.java:613)

"AWT-AppKit" daemon prio=5 tid=0x002168a0 nid=0xa086b720 runnable
[0x00000000..0xbfffd9a8]




"DestroyJavaVM" prio=5 tid=0x00201600 nid=0xb0801000 waiting on
condition [0x00000000..0xb0800060]

"Low Memory Detector" daemon prio=5 tid=0x0020a8b0 nid=0x81b600
runnable [0x00000000..0x00000000]




"CompilerThread1" daemon prio=9 tid=0x00209e00 nid=0x81a800 waiting on
condition [0x00000000..0xb0c093b8]

"CompilerThread0" daemon prio=9 tid=0x00209900 nid=0x819a00 waiting on
condition [0x00000000..0xb0b883b8]




"AdapterThread" daemon prio=9 tid=0x00209290 nid=0x815c00 waiting on
condition [0x00000000..0x00000000]

"Signal Dispatcher" daemon prio=9 tid=0x00208e60 nid=0x808600 waiting
on condition [0x00000000..0x00000000]




"Finalizer" daemon prio=8 tid=0x002085a0 nid=0x818c00 in Object.wait()
[0xb0a05000..0xb0a05d90]
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0e9e09a8> (a java.lang.ref.ReferenceQueue$Lock)



	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:120)
	- locked <0x0e9e09a8> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:136)
	at
java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)




"Reference Handler" daemon prio=10 tid=0x002081c0 nid=0x817400 in
Object.wait() [0xb0984000..0xb0984d90]
	at java.lang.Object.wait(Native Method)
	- waiting on <0x0e9e08c8> (a java.lang.ref.Reference$Lock)



	at java.lang.Object.wait(Object.java:474)
	at
java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
	- locked <0x0e9e08c8> (a java.lang.ref.Reference$Lock)

"VM Thread" prio=9 tid=0x00207910 nid=0x80b800 runnable




"VM Periodic Task Thread" prio=9 tid=0x0020b490 nid=0x81c400 waiting
on condition

"Exception Catcher Thread" prio=10 tid=0x00201850 nid=0x809800 runnable

The information contained in this email and any attached files are strictly
private and confidential. This email should be read by the intended addressee
only.  If the recipient of this message is not the intended addressee, please
call Corporate Express Australia Limited on +61 2 9335 0555 or Corporate Express
New Zealand Limited on +64 9 279 2555 and promptly delete this email and any
attachments.  The intended recipient of this email may only use, reproduce,
disclose or distribute the information contained in this email and any attached
files with Corporate Express' permission. If you are not the intended addressee,
you are strictly prohibited from using, reproducing, disclosing or distributing
the information contained in this email and any attached files.  Corporate
Express advises that this email and any attached files should be scanned to
detect viruses. Corporate Express accepts no liability for loss or damage
(whether caused by negligence or not) resulting from the use of any attached
files.

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


Mime
View raw message