You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@jmeter.apache.org by bu...@apache.org on 2018/11/27 13:15:00 UTC
[Bug 62956] New: ClientJMeterEngine leaves master hanging after
slaves finishes the tests
https://bz.apache.org/bugzilla/show_bug.cgi?id=62956
Bug ID: 62956
Summary: ClientJMeterEngine leaves master hanging after slaves
finishes the tests
Product: JMeter
Version: 4.0
Hardware: PC
OS: Mac OS X 10.1
Status: NEW
Severity: blocker
Priority: P2
Component: Main
Assignee: issues@jmeter.apache.org
Reporter: shuai.alex.shao@oracle.com
Target Milestone: JMETER_5.1
Created attachment 36279
--> https://bz.apache.org/bugzilla/attachment.cgi?id=36279&action=edit
Both WebsocketLoadtest class and Driver class code
Hello, I am using Jmeter 4.0 for distributed testing.
On my slaves, ./bin/jmeter-server is started correctly, and master is trying to
do a websocket connection test (trivial in logic) via the slaves.
So I have a WebsocketLoadtest class which implements JavaSamplerClient for the
testing logic, and a Driver class, for driving the test. The two classes are
attached.
The test plan jmx file is generated by code as follows:
<?xml version="1.0" encoding="UTF-8"?>
<jmeterTestPlan version="1.2" properties="4.0" jmeter="4.0 r1823414">
<org.apache.jorphan.collections.HashTree>
<TestPlan guiclass="TestPlanGui" testclass="TestPlan" testname="Java Load
Test Plan">
<elementProp name="TestPlan.user_defined_variables"
elementType="Arguments" guiclass="ArgumentsPanel" testclass="Arguments"
testname="User Defined Variables" enabled="true">
<collectionProp name="Arguments.arguments"/>
</elementProp>
</TestPlan>
<org.apache.jorphan.collections.HashTree>
<ThreadGroup guiclass="ThreadGroupGui" testclass="ThreadGroup"
testname="Thread Group">
<intProp name="ThreadGroup.num_threads">2</intProp>
<intProp name="ThreadGroup.ramp_time">2</intProp>
<elementProp name="ThreadGroup.main_controller"
elementType="LoopController" guiclass="LoopControlPanel"
testclass="LoopController">
<boolProp name="LoopController.continue_forever">false</boolProp>
<intProp name="LoopController.loops">1</intProp>
</elementProp>
</ThreadGroup>
<org.apache.jorphan.collections.HashTree>
<JavaSampler guiclass="JavaTestSamplerGui" testclass="JavaSampler"
testname="Jmeter_LoadTest_WebsocketLoadtest">
<elementProp name="arguments" elementType="Arguments">
<collectionProp name="Arguments.arguments">
<elementProp name="SleepTime" elementType="Argument">
<stringProp name="Argument.name">SleepTime</stringProp>
<stringProp name="Argument.value">1000</stringProp>
</elementProp>
</collectionProp>
</elementProp>
<stringProp name="classname">WebsocketLoadtest</stringProp>
</JavaSampler>
<org.apache.jorphan.collections.HashTree/>
</org.apache.jorphan.collections.HashTree>
</org.apache.jorphan.collections.HashTree>
</org.apache.jorphan.collections.HashTree>
</jmeterTestPlan>
Now the issue is that when I trigger the Driver class, the slave seems to be
handling fine and showing:
Starting the test on host slc16lff.us.oracle.com @ Tue Nov 27 05:06:00 PST 2018
(1543323960666)
Finished the test on host slc16lff.us.oracle.com @ Tue Nov 27 05:06:02 PST 2018
(1543323962952)
However on master the main thread just hangs there (I trigger the Driver class
by gradle):
> Task :jmeterLoadTest
Test completed. See test.jtl file for results
JMeter .jmx script is available as javaTestPlan.jmx in build folder
summary + 1 in 00:00:00 = 3.9/s Avg: 0 Min: 0 Max: 0 Err:
1 (100.00%) Active: 0 Started: 0 Finished: 0
summary + 1 in 00:00:02 = 0.6/s Avg: 0 Min: 0 Max: 0 Err:
1 (100.00%) Active: 0 Started: 0 Finished: 0
summary = 2 in 00:00:02 = 1.1/s Avg: 0 Min: 0 Max: 0 Err:
2 (100.00%)
<===========--> 85% EXECUTING [4m 15s
Could you please help check if there's anything wrong with the way I form the
JMX file? I do notice that if I don't add the ResultCollector to the
testPlanTree then the main thread on master ends normally, however that's not
ideal because I lose all the testing result.
--
You are receiving this mail because:
You are the assignee for the bug.
[Bug 62956] ClientJMeterEngine leaves master hanging after slaves
finishes the tests
Posted by bu...@apache.org.
https://bz.apache.org/bugzilla/show_bug.cgi?id=62956
Philippe Mouawad <p....@ubik-ingenierie.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|--- |INVALID
Status|NEW |RESOLVED
CC| |p.mouawad@ubik-ingenierie.c
| |om
--- Comment #3 from Philippe Mouawad <p....@ubik-ingenierie.com> ---
Bugzilla is not a support forum particularly for custom code.
Please ask on user mailing list.
For websocket testing, I would advise you to use:
https://bitbucket.org/pjtr/jmeter-websocket-samplers/
which can be installed with jmeter-plugins.
Regards
--
You are receiving this mail because:
You are the assignee for the bug.
[Bug 62956] ClientJMeterEngine leaves master hanging after slaves
finishes the tests
Posted by bu...@apache.org.
https://bz.apache.org/bugzilla/show_bug.cgi?id=62956
Philippe Mouawad <p....@ubik-ingenierie.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|JMETER_5.1 |---
--
You are receiving this mail because:
You are the assignee for the bug.
[Bug 62956] ClientJMeterEngine leaves master hanging after slaves
finishes the tests
Posted by bu...@apache.org.
https://bz.apache.org/bugzilla/show_bug.cgi?id=62956
--- Comment #2 from shuai.alex.shao@oracle.com ---
One thing noticed is that the generated test plan doesn't contain
ResultCollector attribute, even though the java code tries to add that with:
ResultCollector logger = new ResultCollector(summer);
logger.setFilename(REPORT_FILE);
testPlanTree.add(testPlanTree.getArray()[0], logger);
--
You are receiving this mail because:
You are the assignee for the bug.
[Bug 62956] ClientJMeterEngine leaves master hanging after slaves
finishes the tests
Posted by bu...@apache.org.
https://bz.apache.org/bugzilla/show_bug.cgi?id=62956
--- Comment #1 from shuai.alex.shao@oracle.com ---
Created attachment 36280
--> https://bz.apache.org/bugzilla/attachment.cgi?id=36280&action=edit
jmeter log
jmeter log during the test
--
You are receiving this mail because:
You are the assignee for the bug.