jmeter-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Philippe Mouawad <philippe.moua...@gmail.com>
Subject Re: Constant Throughput Timer limitation or bug?
Date Thu, 19 Feb 2015 22:31:47 GMT
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 <erez@theneura.com> wrote:

> Marcelo please send your jmx file. this file cannot be open under Jmeter.
>
>
>
>
>
>
>
> From: Marcelo Jara [mailto:marcelojara@hotmail.com]
> 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: philippe.mouawad@gmail.com <mailto:philippe.mouawad@gmail.com>
> > To: user@jmeter.apache.org <mailto:user@jmeter.apache.org>
> >
> > 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 <marcelojara@hotmail.com
> <mailto:marcelojara@hotmail.com> >
> > 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: philippe.mouawad@gmail.com <mailto:philippe.mouawad@gmail.com>
> > > > To: user@jmeter.apache.org <mailto:user@jmeter.apache.org>
> > > >
> > > > 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 <
> marcelojara@hotmail.com
> <mailto:marcelojara@hotmail.com> >
> > > > 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: marcelojara@hotmail.com <mailto:marcelojara@hotmail.com>
> > > > > > To: user@jmeter.apache.org <mailto:user@jmeter.apache.org>
> > > > > > 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.

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message