Author: milamber
Date: Thu Oct 28 19:09:27 2010
New Revision: 1028437

URL: http://svn.apache.org/viewvc?rev=1028437&view=rev
Log:
Bug 50080 - Transaction controller incorrectly creates samples including timer 
duration

Modified:
    
jakarta/jmeter/trunk/src/core/org/apache/jmeter/control/TransactionSampler.java
    jakarta/jmeter/trunk/src/core/org/apache/jmeter/samplers/SampleResult.java
    jakarta/jmeter/trunk/xdocs/changes.xml

Modified: 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/control/TransactionSampler.java
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/control/TransactionSampler.java?rev=1028437&r1=1028436&r2=1028437&view=diff
==============================================================================
--- 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/control/TransactionSampler.java 
(original)
+++ 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/control/TransactionSampler.java 
Thu Oct 28 19:09:27 2010
@@ -47,6 +47,8 @@ public class TransactionSampler extends 
 
     private int noFailingSamples = 0;
 
+    private int totalTime = 0;
+
     /**
      * @deprecated only for use by test code
      */
@@ -99,6 +101,8 @@ public class TransactionSampler extends 
         }
         // Add the sub result to the transaction result
         transactionSampleResult.addSubResult(res);
+        // Add current time to total for later use (exclude pause time)
+        totalTime += res.getTime();
     }
 
     protected void setTransactionDone() {
@@ -111,6 +115,13 @@ public class TransactionSampler extends 
         if (transactionSampleResult.isSuccessful()) {
             transactionSampleResult.setResponseCodeOK();
         }
+        // Bug 50080 (not include pause time when generate parent)
+        if (!transactionController.isIncludeTimers()) {
+            long end = SampleResult.currentTimeInMs();
+            transactionSampleResult.setIdleTime(end
+                    - transactionSampleResult.getStartTime() - totalTime);
+            transactionSampleResult.setEndTime(end);
+        }
     }
 
     protected void setSubSampler(Sampler subSampler) {

Modified: 
jakarta/jmeter/trunk/src/core/org/apache/jmeter/samplers/SampleResult.java
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/samplers/SampleResult.java?rev=1028437&r1=1028436&r2=1028437&view=diff
==============================================================================
--- jakarta/jmeter/trunk/src/core/org/apache/jmeter/samplers/SampleResult.java 
(original)
+++ jakarta/jmeter/trunk/src/core/org/apache/jmeter/samplers/SampleResult.java 
Thu Oct 28 19:09:27 2010
@@ -890,7 +890,7 @@ public class SampleResult implements Ser
         }
     }
 
-    protected void setEndTime(long end) {
+    public void setEndTime(long end) {
         endTime = end;
         if (!startTimeStamp) {
             timeStamp = endTime;

Modified: jakarta/jmeter/trunk/xdocs/changes.xml
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/xdocs/changes.xml?rev=1028437&r1=1028436&r2=1028437&view=diff
==============================================================================
--- jakarta/jmeter/trunk/xdocs/changes.xml (original)
+++ jakarta/jmeter/trunk/xdocs/changes.xml Thu Oct 28 19:09:27 2010
@@ -77,6 +77,7 @@ To override the default local language f
 <h3>Controllers</h3>
 <ul>
 <li>Bug 50032 - Last_Sample_Ok along with other controllers doesnt work 
correctly when the threadgroup has multiple loops</li>
+<li>Bug 50080 - Transaction controller incorrectly creates samples including 
timer duration</li>
 </ul>
 
 <h3>Listeners</h3>



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to