Hi, It's a bug: https://bz.apache.org/bugzilla/show_bug.cgi?id=57607
Improved behaviour but still not perfect , check nightly build. http://jmeter.apache.org/nightly.html Installing JMeter runtime Download the _bin and _lib files Unpack the archives into the same directory structure The other archives are not needed to run JMeter. Regards On Thu, Feb 19, 2015 at 9:19 AM, Erez Naim <[email protected]> wrote: > Marcelo please send your jmx file. this file cannot be open under Jmeter. > > > > > > > > From: Marcelo Jara [mailto:[email protected]] > Sent: Thursday, February 19, 2015 6:07 AM > To: JMeter Users List > Subject: RE: Constant Throughput Timer limitation or bug? > > > > Not sure if the attachment will go through. If not here's the test plan: > > > > > > > > > > > > <?xml version="1.0" encoding="UTF-8"?> > > <jmeterTestPlan version="1.2" properties="2.7" jmeter="2.12 r1636949"> > > <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> > > <ResultCollector guiclass="SummaryReport" testclass="ResultCollector" > testname="Summary Report" enabled="true"> > > <boolProp name="ResultCollector.error_logging">false</boolProp> > > <objProp> > > <name>saveConfig</name> > > <value class="SampleSaveConfiguration"> > > <time>true</time> > > <latency>true</latency> > > <timestamp>true</timestamp> > > <success>true</success> > > <label>true</label> > > <code>true</code> > > <message>true</message> > > <threadName>true</threadName> > > <dataType>true</dataType> > > <encoding>false</encoding> > > <assertions>true</assertions> > > <subresults>true</subresults> > > <responseData>false</responseData> > > <samplerData>false</samplerData> > > <xml>false</xml> > > <fieldNames>true</fieldNames> > > <responseHeaders>false</responseHeaders> > > <requestHeaders>false</requestHeaders> > > <responseDataOnError>false</responseDataOnError> > > > > <saveAssertionResultsFailureMessage>true</saveAssertionResultsFailureMessage > > > > <assertionsResultsToSave>0</assertionsResultsToSave> > > <bytes>true</bytes> > > <threadCounts>true</threadCounts> > > </value> > > </objProp> > > <stringProp name="filename"></stringProp> > > </ResultCollector> > > <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> > > <intProp name="LoopController.loops">-1</intProp> > > </elementProp> > > <stringProp name="ThreadGroup.num_threads">100</stringProp> > > <stringProp name="ThreadGroup.ramp_time">1</stringProp> > > <longProp name="ThreadGroup.start_time">1424318529000</longProp> > > <longProp name="ThreadGroup.end_time">1424318529000</longProp> > > <boolProp name="ThreadGroup.scheduler">true</boolProp> > > <stringProp name="ThreadGroup.duration">120</stringProp> > > <stringProp name="ThreadGroup.delay"></stringProp> > > </ThreadGroup> > > <hashTree> > > <DebugSampler guiclass="TestBeanGUI" testclass="DebugSampler" > testname="Debug Sampler" enabled="true"> > > <boolProp name="displayJMeterProperties">false</boolProp> > > <boolProp name="displayJMeterVariables">true</boolProp> > > <boolProp name="displaySystemProperties">false</boolProp> > > </DebugSampler> > > <hashTree> > > <ConstantThroughputTimer guiclass="TestBeanGUI" > testclass="ConstantThroughputTimer" testname="Constant Throughput Timer" > enabled="true"> > > <intProp name="calcMode">4</intProp> > > <doubleProp> > > <name>throughput</name> > > <value>20000.0</value> > > <savedValue>0.0</savedValue> > > </doubleProp> > > </ConstantThroughputTimer> > > <hashTree/> > > </hashTree> > > </hashTree> > > </hashTree> > > </hashTree> > > </jmeterTestPlan> > > > > > > > > > > > Date: Wed, 18 Feb 2015 23:26:19 +0100 > > Subject: Re: Constant Throughput Timer limitation or bug? > > From: [email protected] <mailto:[email protected]> > > To: [email protected] <mailto:[email protected]> > > > > Hi, > > Can you provide a simple jmx file using Debug SAmpler or Test Action with > > sleep and showing issue. > > > > On Wed, Feb 18, 2015 at 9:34 PM, Marcelo Jara <[email protected] > <mailto:[email protected]> > > > wrote: > > > > > Thanks Philippe I did read that, but still confused when to use one > over > > > the other. Do you have any examples? Maybe that would make it a little > more > > > clear. > > > However, whether the CTP is calculated based on when each thread last > ran > > > or when any thread last ran, the goal of the timer to reach the target > > > throughput. Why when using shared mode does the throughput jump from > 250 > > > tps to 333 tps when changing CTP from 20,000 to 20,001? > > > > > True, I don't have the full history of CTT, maybe sebb can give more > > details. > > > > For how much time do you run your test ? > > > > > > Thanks again. > > > - Marcelo > > > > > > > Date: Wed, 18 Feb 2015 21:19:09 +0100 > > > > Subject: Re: Constant Throughput Timer limitation or bug? > > > > From: [email protected] <mailto:[email protected]> > > > > To: [email protected] <mailto:[email protected]> > > > > > > > > Hi, > > > > As per: > > > > > > > > > http://jmeter.apache.org/usermanual/component_reference.html#Constant_Throug > hput_Timer > > > > > > > > > > > > - all active threads in current thread group - the target throughput > > > is > > > > divided amongst all the active threads in the group. Each thread will > > > delay > > > > as needed, based on when it last ran. > > > > - all active threads in current thread group (shared) - as above, but > > > > each thread is delayed based on when any thread in the group last > ran. > > > > > > > > Regards > > > > > > > > On Wed, Feb 18, 2015 at 9:00 PM, Marcelo Jara < > [email protected] > <mailto:[email protected]> > > > > > wrote: > > > > > > > > > Not sure why my original email's format is off. > > > > > > > > > > Updating CTP to use "all active threads in current thread group" > seems > > > to > > > > > work. Not sure why using "shared" exhibits the odd results. > > > > > > > > > > > > > > > > From: [email protected] <mailto:[email protected]> > > > > > > To: [email protected] <mailto:[email protected]> > > > > > > Subject: Constant Throughput Timer limitation or bug? > > > > > > Date: Wed, 18 Feb 2015 14:36:49 -0500 > > > > > > > > > > > > I am using Jmeter 2.12 and noticed that during a test, the > > > transactions > > > > > per second was much higher than I had configured. Using a value of > > > 15000 > > > > > (250 TPS) works as expected. If I go to 15001, the TPS jumps to > 333. > > > Here > > > > > are some more results: > > > > > CTP = 15000, expected = 250 tps, result 250 tpsCTP = 15001, > expected > = > > > 250 > > > > > tps, result 333 tps > > > > > CTP = 20000, expected = 333 tps, result 333 tpsCTP = 20001, > expected > = > > > 333 > > > > > tps, result 500 tps > > > > > CTP = 30000, expected = 500 tps, result 500 tpsCTP = 30001, > expected > = > > > 500 > > > > > tps, result 1000 tps > > > > > > > > > > > > > > > > > > I was able to create a simple test plan that exhibits the same > issue. > > > > > Thread Group (100 threads, loop forever,scheduler with duration of > 60) > > > > > ---- Debug Sampler (all defaults) ---- CTP (all active > > > threads in > > > > > current thread group (shared) > > > > > > > > > > > > > > > > > > Anyone else run into this? > > > > > > Thanks, > > > > > > Marcelo > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > Cordialement. > > > > Philippe Mouawad. > > > > > > > > > > > > > > -- > > Cordialement. > > Philippe Mouawad. > > -- Cordialement. Philippe Mouawad.
