You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jmeter.apache.org by pm...@apache.org on 2017/01/31 11:16:12 UTC

svn commit: r1781057 - in /jmeter/trunk: bin/jmeter.properties src/core/org/apache/jmeter/control/IfController.java src/functions/org/apache/jmeter/functions/JavaScript.java xdocs/changes.xml xdocs/usermanual/properties_reference.xml

Author: pmouawad
Date: Tue Jan 31 11:16:11 2017
New Revision: 1781057

URL: http://svn.apache.org/viewvc?rev=1781057&view=rev
Log:
Bug 60672 - JavaScript function / IfController : use Nashorn engine by default
Bugzilla Id: 60672

Modified:
    jmeter/trunk/bin/jmeter.properties
    jmeter/trunk/src/core/org/apache/jmeter/control/IfController.java
    jmeter/trunk/src/functions/org/apache/jmeter/functions/JavaScript.java
    jmeter/trunk/xdocs/changes.xml
    jmeter/trunk/xdocs/usermanual/properties_reference.xml

Modified: jmeter/trunk/bin/jmeter.properties
URL: http://svn.apache.org/viewvc/jmeter/trunk/bin/jmeter.properties?rev=1781057&r1=1781056&r2=1781057&view=diff
==============================================================================
--- jmeter/trunk/bin/jmeter.properties (original)
+++ jmeter/trunk/bin/jmeter.properties Tue Jan 31 11:16:11 2017
@@ -1136,10 +1136,10 @@ cookies=cookies
 
 # Ability to switch to Nashorn as default Javascript Engine used by IfController and __javaScript function
 # JMeter works as following:
-# - JDK < 8 : Rhino
-# - JDK >= 8 and javascript.use_rhino=false: Nashorn
-# If you want to use Nashorn on JDK8, set this property to false
-#javascript.use_rhino=true
+# - JDK >= 8 and javascript.use_rhino=false or not set : Nashorn
+# - JDK >= 8 and javascript.use_rhino=true: Rhino
+# If you want to use Rhino on JDK8, set this property to true
+#javascript.use_rhino=false
 
 # Number of milliseconds to wait for a thread to stop
 #jmeterengine.threadstop.wait=5000

Modified: jmeter/trunk/src/core/org/apache/jmeter/control/IfController.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/core/org/apache/jmeter/control/IfController.java?rev=1781057&r1=1781056&r2=1781057&view=diff
==============================================================================
--- jmeter/trunk/src/core/org/apache/jmeter/control/IfController.java (original)
+++ jmeter/trunk/src/core/org/apache/jmeter/control/IfController.java Tue Jan 31 11:16:11 2017
@@ -77,7 +77,7 @@ public class IfController extends Generi
     private static final String USE_RHINO_ENGINE_PROPERTY = "javascript.use_rhino"; //$NON-NLS-1$
 
     private static final boolean USE_RHINO_ENGINE = 
-            JMeterUtils.getPropDefault(USE_RHINO_ENGINE_PROPERTY, true) ||
+            JMeterUtils.getPropDefault(USE_RHINO_ENGINE_PROPERTY, false) ||
             getInstance().getEngineByName(NASHORN_ENGINE_NAME) == null;
 
     

Modified: jmeter/trunk/src/functions/org/apache/jmeter/functions/JavaScript.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/functions/org/apache/jmeter/functions/JavaScript.java?rev=1781057&r1=1781056&r2=1781057&view=diff
==============================================================================
--- jmeter/trunk/src/functions/org/apache/jmeter/functions/JavaScript.java (original)
+++ jmeter/trunk/src/functions/org/apache/jmeter/functions/JavaScript.java Tue Jan 31 11:16:11 2017
@@ -58,7 +58,7 @@ public class JavaScript extends Abstract
     }
  
     private static final boolean USE_RHINO_ENGINE = 
-            JMeterUtils.getPropDefault(USE_RHINO_ENGINE_PROPERTY, true) || 
+            JMeterUtils.getPropDefault(USE_RHINO_ENGINE_PROPERTY, false) || 
             (getInstance().getEngineByName(JavaScript.NASHORN_ENGINE_NAME) == null);
 
     /**

Modified: jmeter/trunk/xdocs/changes.xml
URL: http://svn.apache.org/viewvc/jmeter/trunk/xdocs/changes.xml?rev=1781057&r1=1781056&r2=1781057&view=diff
==============================================================================
--- jmeter/trunk/xdocs/changes.xml [utf-8] (original)
+++ jmeter/trunk/xdocs/changes.xml [utf-8] Tue Jan 31 11:16:11 2017
@@ -86,6 +86,9 @@ JMeter now requires Java 8. Ensure you u
     <li>Process Sampler now returns error code 500 when an error occurs. It previously returned an empty value.</li>
     <li>In <code>org.apache.jmeter.protocol.http.sampler.HTTPHCAbstractImpl</code> 2 protected static fields (localhost and nonProxyHostSuffixSize) have been renamed to (LOCALHOST and NON_PROXY_HOST_SUFFIX_SIZE) 
         to follow static fields naming convention</li>
+    <li>JMeter now uses by default Oracle Nashorn engine instead of Mozilla Rhino for better performances. This should not have an impact unless
+    you use some advanced features. You can revert back to Rhino by settings property <code>javascript.use_rhino=true</code>. 
+    You can read this <a href="https://wiki.openjdk.java.net/display/Nashorn/Rhino+Migration+Guide">migration guide</a> for more details on Nashorn. See <bugzilla>60672</bugzilla></li>
 </ul>
 
 <h3>Deprecated and removed elements or functions</h3>
@@ -122,6 +125,7 @@ JMeter now requires Java 8. Ensure you u
 
 <h3>Controllers</h3>
 <ul>
+    <li><bug>60672</bug>JavaScript function / IfController : use Nashorn engine by default</li>
 </ul>
 
 <h3>Listeners</h3>

Modified: jmeter/trunk/xdocs/usermanual/properties_reference.xml
URL: http://svn.apache.org/viewvc/jmeter/trunk/xdocs/usermanual/properties_reference.xml?rev=1781057&r1=1781056&r2=1781057&view=diff
==============================================================================
--- jmeter/trunk/xdocs/usermanual/properties_reference.xml (original)
+++ jmeter/trunk/xdocs/usermanual/properties_reference.xml Tue Jan 31 11:16:11 2017
@@ -1371,11 +1371,11 @@ log_level.org.apache.http.client=DEBUG
     Defaults to: <code>cookies</code>
 </property>
 <property name="javascript.use_rhino">
-    Ability to switch to Nashorn as default Javascript Engine used by <code>IfController</code>
+    Ability to switch to Rhino as default Javascript Engine used by <code>IfController</code>
     and <code>__javaScript</code> function.<br/>
-    <note>JMeter will prefer to use Rhino even if it detects a JRE 8 or higher.
-    If you want to use Nashorn, set this value to <code>false</code></note>
-    Defaults to: <code>true</code>
+    <note>JMeter will prefer to use Nashorn since 3.2 version.
+    If you want to use Rhino, set this value to <code>true</code></note>
+    Defaults to: <code>false</code>
 </property>
 <property name="jmeterengine.threadstop.wait">
     Number of milliseconds to wait for a thread to stop.<br/>