apache / apache/jmeter

NPE when using bzm - Parallel Controller with Transaction Controllers inside, on second run in loop

Open
#6,065 2 comments 0 reactions 0 assignees View on GitHub
defect to-triage
Dominant language
Java
Stars
9.5k
Forks
2.3k
Avg merge
1d 22h
Merged PRs (30d)
5

Description

### Expected behavior

Jmeter should work as usual in a parallel controller and not fail between steps (NO specific Jmeter element is failing, but between elements).

### Actual behavior

2023-08-21 10:21:07,754 ERROR o.a.j.t.JMeterThread: Test failed!
java.lang.NullPointerException: null
at org.apache.jmeter.control.TransactionController.notifyListeners(TransactionController.java:285) ~[ApacheJMeter_core.jar:5.5]
at org.apache.jmeter.control.TransactionController.nextWithoutTransactionSampler(TransactionController.java:223) ~[ApacheJMeter_core.jar:5.5]
at org.apache.jmeter.control.TransactionController.next(TransactionController.java:135) ~[ApacheJMeter_core.jar:5.5]
at org.apache.jmeter.control.GenericController.nextIsAController(GenericController.java:225) ~[ApacheJMeter_core.jar:5.5]
at org.apache.jmeter.control.TransactionController.nextIsAController(TransactionController.java:173) ~[ApacheJMeter_core.jar:5.5]
at org.apache.jmeter.control.GenericController.next(GenericController.java:175) ~[ApacheJMeter_core.jar:5.5]
at org.apache.jmeter.control.TransactionController.nextWithoutTransactionSampler(TransactionController.java:205) ~[ApacheJMeter_core.jar:5.5]
at org.apache.jmeter.control.TransactionController.next(TransactionController.java:135) ~[ApacheJMeter_core.jar:5.5]
at org.apache.jmeter.control.GenericController.nextIsAController(GenericController.java:222) ~[ApacheJMeter_core.jar:5.5]
at org.apache.jmeter.control.GenericController.next(GenericController.java:175) ~[ApacheJMeter_core.jar:5.5]
at org.apache.jmeter.control.LoopController.next(LoopController.java:134) ~[ApacheJMeter_core.jar:5.5]
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:303) ~[ApacheJMeter_core.jar:?]
at com.blazemeter.jmeter.controller.JMeterThreadParallel.run(JMeterThreadParallel.java:61) ~[jmeter-parallel-0.11.jar:?]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[?:1.8.0_331]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:1.8.0_331]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[?:1.8.0_331]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[?:1.8.0_331]
at java.lang.Thread.run(Thread.java:750) ~[?:1.8.0_331]
2023-08-21 10:21:07,754 INFO o.a.j.t.JMeterThread: Thread finished: org.apache.jmeter.threads.JMeterThread@14cab714 - 3-4-5-6-7-8-9-10. bzm - Parallel Controller - Import in 3 ARM domains - REMOVING ALL TRANSACTIONS CONTROLLERS BECAUSE OF NPE ERROR - JMETER BUG - transaction controllers are failing on second run of parallel controller - 3.1 Import ARM Domain 1
2023-08-21 10:21:07,761 INFO o.a.j.t.JMeterThread: Thread is done: getAverageExportTime 1-1
2023-08-21 10:21:07,761 INFO o.a.j.t.JMeterThread: Thread finished: getAverageExportTime 1-1
2023-08-21 10:21:07,763 INFO o.a.j.e.StandardJMeterEngine: Notifying test listeners of end of test

### Steps to reproduce the problem

- Add a new bzm Parallel Controler
- Add a transaction controller in it or more
- do something inside the transaction controller
- run it in a loop (twice or more) - to add it in a loop I have put a loop controller which contains the bzm parallel controller with the transaction controllers in it.
- If you run, you will see that first iteration of the loop everything works as expected but then in the second iteration of the loop, it will execute only once what is in the transaction controller and then it will fail with the error above with Null Pointer Exception.

### JMeter Version

5.5

### Java Version

1.0.8_371ver

### OS Version

_No response_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.