This is an automated email from the ASF dual-hosted git repository.
vladimirsitnikov pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/jmeter.git
The following commit(s) were added to refs/heads/master by this push:
new bfd83d52a6 Speed up CPU-bound tests by skipping recoverRunningVersion
for elements that are shared between threads (the ones that implement
NoThreadClone (#5899)
bfd83d52a6 is described below
commit bfd83d52a67dd00ab5355171bdf0261e619169f1
Author: Vladimir Sitnikov <[email protected]>
AuthorDate: Wed May 10 20:30:27 2023 +0300
Speed up CPU-bound tests by skipping recoverRunningVersion for elements
that are shared between threads (the ones that implement NoThreadClone (#5899)
See https://github.com/apache/jmeter/issues/5875
---
.../java/org/apache/jmeter/testelement/AbstractTestElement.java | 6 ++++++
xdocs/changes.xml | 1 +
2 files changed, 7 insertions(+)
diff --git
a/src/core/src/main/java/org/apache/jmeter/testelement/AbstractTestElement.java
b/src/core/src/main/java/org/apache/jmeter/testelement/AbstractTestElement.java
index 59049988c0..697d5e8670 100644
---
a/src/core/src/main/java/org/apache/jmeter/testelement/AbstractTestElement.java
+++
b/src/core/src/main/java/org/apache/jmeter/testelement/AbstractTestElement.java
@@ -27,6 +27,7 @@ import java.util.List;
import java.util.Map;
import java.util.Set;
+import org.apache.jmeter.engine.util.NoThreadClone;
import org.apache.jmeter.gui.Searchable;
import org.apache.jmeter.testelement.property.BooleanProperty;
import org.apache.jmeter.testelement.property.CollectionProperty;
@@ -502,6 +503,11 @@ public abstract class AbstractTestElement implements
TestElement, Serializable,
*/
@Override
public void recoverRunningVersion() {
+ if (this instanceof NoThreadClone) {
+ // The element is shared between threads, so there's nothing to
recover
+ // See https://github.com/apache/jmeter/issues/5875
+ return;
+ }
Iterator<Map.Entry<String, JMeterProperty>> iter =
propMap.entrySet().iterator();
while (iter.hasNext()) {
Map.Entry<String, JMeterProperty> entry = iter.next();
diff --git a/xdocs/changes.xml b/xdocs/changes.xml
index 936694aa6b..2c6ace3f66 100644
--- a/xdocs/changes.xml
+++ b/xdocs/changes.xml
@@ -99,6 +99,7 @@ Summary
<h3>General</h3>
<ul>
<li><pr>5792</pr>Add KeyStroke for start_no_timers (Start no pauses:
CRTL+SHIFT+n)</li>
+ <li><pr>5899</pr>Speed up CPU-bound tests by skipping
<code>recoverRunningVersion</code> for elements that are shared between threads
(the ones that implement <code>NoThreadClone</code>)</li>
</ul>
<ch_section>Non-functional changes</ch_section>