You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jmeter.apache.org by pm...@apache.org on 2015/02/19 23:29:04 UTC
svn commit: r1661016 - in /jmeter/trunk:
src/components/org/apache/jmeter/timers/ConstantThroughputTimer.java
xdocs/changes.xml
Author: pmouawad
Date: Thu Feb 19 22:29:03 2015
New Revision: 1661016
URL: http://svn.apache.org/r1661016
Log:
Bug 57607 - Constant Throughput Timer : Wrong throughput computed in shared modes due to rounding error
Bugzilla Id: 57607
Modified:
jmeter/trunk/src/components/org/apache/jmeter/timers/ConstantThroughputTimer.java
jmeter/trunk/xdocs/changes.xml
Modified: jmeter/trunk/src/components/org/apache/jmeter/timers/ConstantThroughputTimer.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/components/org/apache/jmeter/timers/ConstantThroughputTimer.java?rev=1661016&r1=1661015&r2=1661016&view=diff
==============================================================================
--- jmeter/trunk/src/components/org/apache/jmeter/timers/ConstantThroughputTimer.java (original)
+++ jmeter/trunk/src/components/org/apache/jmeter/timers/ConstantThroughputTimer.java Thu Feb 19 22:29:03 2015
@@ -31,8 +31,8 @@ import org.apache.jmeter.testelement.Abs
import org.apache.jmeter.testelement.TestStateListener;
import org.apache.jmeter.testelement.property.JMeterProperty;
import org.apache.jmeter.testelement.property.StringProperty;
-import org.apache.jmeter.threads.JMeterContextService;
import org.apache.jmeter.threads.AbstractThreadGroup;
+import org.apache.jmeter.threads.JMeterContextService;
import org.apache.jmeter.util.JMeterUtils;
import org.apache.jorphan.logging.LoggingManager;
import org.apache.log.Logger;
@@ -177,15 +177,15 @@ public class ConstantThroughputTimer ext
double msPerRequest = (MILLISEC_PER_MIN / getThroughput());
switch (mode) {
case AllActiveThreads: // Total number of threads
- delay = (long) (JMeterContextService.getNumberOfThreads() * msPerRequest);
+ delay = Math.round(JMeterContextService.getNumberOfThreads() * msPerRequest);
break;
case AllActiveThreadsInCurrentThreadGroup: // Active threads in this group
- delay = (long) (JMeterContextService.getContext().getThreadGroup().getNumberOfThreads() * msPerRequest);
+ delay = Math.round(JMeterContextService.getContext().getThreadGroup().getNumberOfThreads() * msPerRequest);
break;
case AllActiveThreads_Shared: // All threads - alternate calculation
- delay = calculateSharedDelay(allThreadsInfo,(long) msPerRequest);
+ delay = calculateSharedDelay(allThreadsInfo,Math.round(msPerRequest));
break;
case AllActiveThreadsInCurrentThreadGroup_Shared: //All threads in this group - alternate calculation
@@ -199,12 +199,12 @@ public class ConstantThroughputTimer ext
groupInfo = previous; // so use the existing one
}
}
- delay = calculateSharedDelay(groupInfo,(long) msPerRequest);
+ delay = calculateSharedDelay(groupInfo,Math.round(msPerRequest));
break;
case ThisThreadOnly:
default: // e.g. 0
- delay = (long) msPerRequest; // i.e. * 1
+ delay = Math.round(msPerRequest); // i.e. * 1
break;
}
return delay;
Modified: jmeter/trunk/xdocs/changes.xml
URL: http://svn.apache.org/viewvc/jmeter/trunk/xdocs/changes.xml?rev=1661016&r1=1661015&r2=1661016&view=diff
==============================================================================
--- jmeter/trunk/xdocs/changes.xml (original)
+++ jmeter/trunk/xdocs/changes.xml Thu Feb 19 22:29:03 2015
@@ -168,6 +168,7 @@ See <bugzilla>56357</bugzilla> for deta
<h3>Timers, Assertions, Config, Pre- & Post-Processors</h3>
<ul>
+<li><bug>57607</bug>Constant Throughput Timer : Wrong throughput computed in shared modes due to rounding error </li>
</ul>
<h3>Functions</h3>
@@ -268,7 +269,8 @@ See <bugzilla>56357</bugzilla> for deta
We also thank bug reporters who helped us improve JMeter. <br/>
For this release we want to give special thanks to the following reporters for the clear reports and tests made after our fixes:
<ul>
-<li>Chaitanya Bhatt (bhatt.chaitanya@gmail.com) for his thorough testing of new BackendListener and Graphite Client implementation.</li>
+<li>Chaitanya Bhatt (bhatt.chaitanya at gmail.com) for his thorough testing of new BackendListener and Graphite Client implementation.</li>
+<li>Marcelo Jara (marcelojara at hotmail.com) for his clear report on <bugzilla>57607</bugzilla>.</li>
</ul>
Apologies if we have omitted anyone else.