java.lang.RuntimeException: Attempting to reset the thread name -> Jmeter Error while execution

242 Views Asked by At

When I execute my jmeter script with below mentioned scenario then I get java.lang.RuntimeException in the logs and 2nd iteration/loop count APIs are not executed.

As you can see only for 1 thread APIs are visible in view result tree.

View Results Tree__1

In this you can see that no APIs are executed for 2nd thread.

View Results Tree_2

Runtime exception is coming.

RuntimeExceptionError__inJmeterLogs

Thread Properties

Number of threads : 1
Ramp-up period : 1
Loop Count : 2
Thread Group Used : Normal Thread Group
Controller Used : Parallel

Data is parameterized using 1 csv file only.

I also used "Transaction Controller" to verify but in that I didn't faced any issues and the threads were executing for the mentioned loop count. Is it normal in case of parallel controllers?

1

There are 1 best solutions below

1
Dmitri T On

As per "Limitations" chapter of the Parallel Controller documentation

Parallel Controller does not support work with Transaction Controller so if used you can get an unexpected results. If you decide to use these controllers together familiarize yourself with already known problems that described in roadmap

So my expectation is that you need to remove either Transaction or Parallel controller from your test plan.

Parallel Controller is for "exotic" scenarios like handling AJAX requests when a single JMeter's thread (virtual user) kicks off one or more sub-threads

  • If in the reality your "Scan_API" requests are sequential - you need to remove the Transaction Controller and implement concurrency on Thread Group level
  • If in the reality all the "Scan_API" requests are executed at the same moment, i.e. when one user "scans" something 13 concurrent requests are fired - then you need to remove the Transaction Controller because you don't really need it, the total execution time of the "scan" would be the time of the longest request so Parallel Controller in "parent sampler" mode will return you the slowest request execution time and that would be the value you're looking for.

More information: How to Use the Parallel Controller in JMeter