-
Couldn't load subscription status.
- Fork 2.2k
Description
Expected behavior
I expect that transaction sample elapsed time is the sum of child sample elapsed times excluding thread pause times which should be counted as idle time for the transaction. (Include duration of timer and pre-post processors in generated sample is set to false)
Alternatively the success flag could be set to false for the transaction.
This was working as expected in JMeter 2.9
Actual behavior
As long as the threads are not stopped the behaviour is as expected.
But during ramp down or thread stop the pause times seem to be added to the transaction elapsed time, which is wrong and produces bad performance results.
Sample during normal execution:
<sample t="924" it="30012" lt="0" ts="1755001448003" s="true" lb="Transaction Controller" rc="200" rm="Number of samples in transaction : 3, number of failing samples : 0" tn="Thread Group 1-10" dt="" by="4589" sc="1" ec="0" ng="10" na="10">
<httpSample t="230" it="0" lt="229" ts="1755001458008" s="true" lb="Dummy Request #1" rc="200" rm="OK" tn="Thread Group 1-10" dt="text" by="1521" sc="1" ec="0" ng="10" na="10">
<java.net.URL>http://example.com/</java.net.URL>
</httpSample>
<httpSample t="338" it="0" lt="338" ts="1755001468243" s="true" lb="Dummy Request #2" rc="200" rm="OK" tn="Thread Group 1-10" dt="text" by="1534" sc="1" ec="0" ng="10" na="10">
<java.net.URL>http://example.com/</java.net.URL>
</httpSample>
<httpSample t="356" it="0" lt="355" ts="1755001478584" s="true" lb="Dummy Request #3" rc="200" rm="OK" tn="Thread Group 1-10" dt="text" by="1534" sc="1" ec="0" ng="10" na="10">
<java.net.URL>http://example.com/</java.net.URL>
</httpSample>
</sample>
Sample during ramp down / thread stop:
<sample t="20707" it="0" lt="0" ts="1755001458708" s="true" lb="Transaction Controller" rc="200" rm="" tn="Thread Group 1-1" dt="" by="3068" sc="1" ec="0" ng="9" na="9">
<httpSample t="354" it="0" lt="354" ts="1755001468710" s="true" lb="Dummy Request #1" rc="200" rm="OK" tn="Thread Group 1-1" dt="text" by="1534" sc="1" ec="0" ng="10" na="10">
<java.net.URL>http://example.com/</java.net.URL>
</httpSample>
<httpSample t="346" it="0" lt="346" ts="1755001479070" s="true" lb="Dummy Request #2" rc="200" rm="OK" tn="Thread Group 1-1" dt="text" by="1534" sc="1" ec="0" ng="9" na="9">
<java.net.URL>http://example.com/</java.net.URL>
</httpSample>
</sample>
Steps to reproduce the problem
Execute the attached TestPlan.
open the generated rampdown-requests.xml and have a look at the elasped time of the last samples.
JMeter Version
5.6.3
Java Version
OpenJDK Runtime Environment Zulu17.46+19-CA (build 17.0.9+8-LTS)
OS Version
MacOS 15.6