https://bz.apache.org/bugzilla/show_bug.cgi?id=55827

--- Comment #11 from Felix Schumacher <felix.schumac...@internetallee.de> ---
Created attachment 38218
  --> https://bz.apache.org/bugzilla/attachment.cgi?id=38218&action=edit
Slow down recoverRunningVersion to show problems

I think we have to use a lock around the clean-up of the temporary properties
like Graham did.

With the attached patch I can reproduce an overlap in the recoverRunningVersion
method between more than one thread.

The exceptions (with are for example:
2022-03-08 21:23:14,089 WARN o.a.j.t.AbstractTestElement: Recover in different
threads: [Thread[Thread-33,6,main], Thread[Thread-19,6,main]]; Element:
org.apache.jmeter.sampler.DebugSampler@7ea357f0
java.lang.RuntimeException: Thread mismatch
>-------at 
>org.apache.jmeter.testelement.AbstractTestElement.recoverRunningVersion(AbstractTestElement.java:511)
> ~[ApacheJMeter_core.jar:5.5-SNAPSHOT]
>-------at 
>org.apache.jmeter.threads.SamplePackage.recoverRunningVersion(SamplePackage.java:126)
> ~[ApacheJMeter_core.jar:5.5-SNAPSHOT]
>-------at org.apache.jmeter.threads.TestCompiler.done(TestCompiler.java:123) 
>~[ApacheJMeter_core.jar:5.5-SNAPSHOT]
>-------at 
>org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:593)
> ~[ApacheJMeter_core.jar:5.5-SNAPSHOT]
>-------at 
>org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:501) 
>~[ApacheJMeter_core.jar:5.5-SNAPSHOT]
>-------at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:268) 
>~[ApacheJMeter_core.jar:5.5-SNAPSHOT]
>-------at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_201]
2022-03-08 21:23:14,579 WARN o.a.j.t.AbstractTestElement: Recover in different
threads: [Thread[Thread-34,6,main], Thread[Thread-20,6,main]]; Element:
org.apache.jmeter.sampler.DebugSampler@521c345a
java.lang.RuntimeException: Thread mismatch
>-------at 
>org.apache.jmeter.testelement.AbstractTestElement.recoverRunningVersion(AbstractTestElement.java:511)
> ~[ApacheJMeter_core.jar:5.5-SNAPSHOT]
>-------at 
>org.apache.jmeter.threads.SamplePackage.recoverRunningVersion(SamplePackage.java:126)
> ~[ApacheJMeter_core.jar:5.5-SNAPSHOT]
>-------at org.apache.jmeter.threads.TestCompiler.done(TestCompiler.java:123) 
>~[ApacheJMeter_core.jar:5.5-SNAPSHOT]
>-------at 
>org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:593)
> ~[ApacheJMeter_core.jar:5.5-SNAPSHOT]
>-------at 
>org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:501) 
>~[ApacheJMeter_core.jar:5.5-SNAPSHOT]
>-------at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:268) 
>~[ApacheJMeter_core.jar:5.5-SNAPSHOT]
>-------at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_201]
2022-03-08 21:23:14,590 WARN o.a.j.t.AbstractTestElement: Recover in different
threads: [Thread[Thread-35,6,main], Thread[Thread-30,6,main],
Thread[Thread-21,6,main], Thread[Thread-16,6,main]]; Element:
org.apache.jmeter.control.LoopController@4b4d66fb
java.lang.RuntimeException: Thread mismatch
>-------at 
>org.apache.jmeter.testelement.AbstractTestElement.recoverRunningVersion(AbstractTestElement.java:511)
> ~[ApacheJMeter_core.jar:5.5-SNAPSHOT]
>-------at 
>org.apache.jmeter.control.LoopController.reInitialize(LoopController.java:203) 
>~[ApacheJMeter_core.jar:5.5-SNAPSHOT]
>-------at 
>org.apache.jmeter.control.LoopController.nextIsNull(LoopController.java:157) 
>~[ApacheJMeter_core.jar:5.5-SNAPSHOT]
>-------at 
>org.apache.jmeter.control.GenericController.next(GenericController.java:170) 
>~[ApacheJMeter_core.jar:5.5-SNAPSHOT]
>-------at 
>org.apache.jmeter.control.LoopController.next(LoopController.java:134) 
>~[ApacheJMeter_core.jar:5.5-SNAPSHOT]
>-------at 
>org.apache.jmeter.threads.AbstractThreadGroup.next(AbstractThreadGroup.java:99)
> ~[ApacheJMeter_core.jar:5.5-SNAPSHOT]
>-------at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:303) 
>~[ApacheJMeter_core.jar:5.5-SNAPSHOT]
>-------at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_201]

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to