From commits-return-2111-apmail-jmeter-commits-archive=jmeter.apache.org@jmeter.apache.org Thu Mar 28 01:12:37 2013 Return-Path: X-Original-To: apmail-jmeter-commits-archive@minotaur.apache.org Delivered-To: apmail-jmeter-commits-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id AC3B0FEA8 for ; Thu, 28 Mar 2013 01:12:37 +0000 (UTC) Received: (qmail 50879 invoked by uid 500); 28 Mar 2013 01:12:37 -0000 Delivered-To: apmail-jmeter-commits-archive@jmeter.apache.org Received: (qmail 50860 invoked by uid 500); 28 Mar 2013 01:12:37 -0000 Mailing-List: contact commits-help@jmeter.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@jmeter.apache.org Delivered-To: mailing list commits@jmeter.apache.org Received: (qmail 50853 invoked by uid 99); 28 Mar 2013 01:12:37 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 28 Mar 2013 01:12:37 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 28 Mar 2013 01:12:33 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id 61D1C23888FE; Thu, 28 Mar 2013 01:12:11 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1461911 - in /jmeter/trunk: ./ bin/testfiles/ src/core/org/apache/jmeter/engine/ src/core/org/apache/jmeter/samplers/ xdocs/ Date: Thu, 28 Mar 2013 01:12:11 -0000 To: commits@jmeter.apache.org From: sebb@apache.org X-Mailer: svnmailer-1.0.8-patched Message-Id: <20130328011211.61D1C23888FE@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: sebb Date: Thu Mar 28 01:12:10 2013 New Revision: 1461911 URL: http://svn.apache.org/r1461911 Log: ArrayIndexOutOfBoundsException if "sample_variable" is set in client but not server Bugzilla Id: 54685 Added: jmeter/trunk/bin/testfiles/Bug54685.csv jmeter/trunk/bin/testfiles/Bug54685.jmx (with props) jmeter/trunk/bin/testfiles/Bug54685.xml (with props) Modified: jmeter/trunk/build.xml jmeter/trunk/src/core/org/apache/jmeter/engine/StandardJMeterEngine.java jmeter/trunk/src/core/org/apache/jmeter/samplers/SampleEvent.java jmeter/trunk/xdocs/changes.xml Added: jmeter/trunk/bin/testfiles/Bug54685.csv URL: http://svn.apache.org/viewvc/jmeter/trunk/bin/testfiles/Bug54685.csv?rev=1461911&view=auto ============================================================================== --- jmeter/trunk/bin/testfiles/Bug54685.csv (added) +++ jmeter/trunk/bin/testfiles/Bug54685.csv Thu Mar 28 01:12:10 2013 @@ -0,0 +1,2 @@ +label,responseCode,responseMessage,threadName,dataType,success,bytes,"REFERENCE","JSESSIONID" +"sample_variables=REFERENCE,JSESSIONID REFERENCE=reference JSESSIONID=jsessionId",,,Thread Group 1-1,,true,0,reference,jsessionId Added: jmeter/trunk/bin/testfiles/Bug54685.jmx URL: http://svn.apache.org/viewvc/jmeter/trunk/bin/testfiles/Bug54685.jmx?rev=1461911&view=auto ============================================================================== --- jmeter/trunk/bin/testfiles/Bug54685.jmx (added) +++ jmeter/trunk/bin/testfiles/Bug54685.jmx Thu Mar 28 01:12:10 2013 @@ -0,0 +1,155 @@ + + + + + + false + false + + + + REFERENCE + reference + = + + + JSESSIONID + jsessionId + = + + + + + + + + continue + + false + 1 + + 1 + 1 + 1364309240000 + 1364309240000 + false + + + + + + + + + Sleep_Time + 100 + = + + + Sleep_Mask + 0xFF + = + + + Label + sample_variables=${__P(sample_variables,'undef')} REFERENCE=${REFERENCE} JSESSIONID=${JSESSIONID} + = + + + ResponseCode + + = + + + ResponseMessage + + = + + + Status + OK + = + + + SamplerData + + = + + + ResultData + + = + + + + org.apache.jmeter.protocol.java.test.JavaTest + + + + + false + + saveConfig + + + false + false + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + false + 0 + true + + + Bug54685.csv + + + + false + + saveConfig + + + false + false + true + + true + true + true + true + false + true + true + false + false + true + false + false + false + false + false + 0 + true + + + Bug54685.xml + + + + + Propchange: jmeter/trunk/bin/testfiles/Bug54685.jmx ------------------------------------------------------------------------------ svn:eol-style = LF Added: jmeter/trunk/bin/testfiles/Bug54685.xml URL: http://svn.apache.org/viewvc/jmeter/trunk/bin/testfiles/Bug54685.xml?rev=1461911&view=auto ============================================================================== --- jmeter/trunk/bin/testfiles/Bug54685.xml (added) +++ jmeter/trunk/bin/testfiles/Bug54685.xml Thu Mar 28 01:12:10 2013 @@ -0,0 +1,5 @@ + + + + + Propchange: jmeter/trunk/bin/testfiles/Bug54685.xml ------------------------------------------------------------------------------ svn:eol-style = native Modified: jmeter/trunk/build.xml URL: http://svn.apache.org/viewvc/jmeter/trunk/build.xml?rev=1461911&r1=1461910&r2=1461911&view=diff ============================================================================== --- jmeter/trunk/build.xml (original) +++ jmeter/trunk/build.xml Thu Mar 28 01:12:10 2013 @@ -2341,7 +2341,7 @@ run JMeter unless all the JMeter jars ar - + @@ -2373,6 +2373,12 @@ run JMeter unless all the JMeter jars ar + + + @@ -2429,6 +2435,7 @@ run JMeter unless all the JMeter jars ar + @@ -2481,6 +2488,7 @@ run JMeter unless all the JMeter jars ar + @@ -2492,6 +2500,22 @@ run JMeter unless all the JMeter jars ar + + + + + + + + + + + + + + + + Modified: jmeter/trunk/src/core/org/apache/jmeter/engine/StandardJMeterEngine.java URL: http://svn.apache.org/viewvc/jmeter/trunk/src/core/org/apache/jmeter/engine/StandardJMeterEngine.java?rev=1461911&r1=1461910&r2=1461911&view=diff ============================================================================== --- jmeter/trunk/src/core/org/apache/jmeter/engine/StandardJMeterEngine.java (original) +++ jmeter/trunk/src/core/org/apache/jmeter/engine/StandardJMeterEngine.java Thu Mar 28 01:12:10 2013 @@ -27,6 +27,7 @@ import java.util.Properties; import java.util.concurrent.CopyOnWriteArrayList; import org.apache.jmeter.JMeter; +import org.apache.jmeter.samplers.SampleEvent; import org.apache.jmeter.testbeans.TestBean; import org.apache.jmeter.testbeans.TestBeanHelper; import org.apache.jmeter.testelement.TestElement; @@ -302,6 +303,12 @@ public class StandardJMeterEngine implem log.info("Running the test!"); running = true; + /* + * Ensure that the sample variables are correctly initialised for each run. + * TODO is this the best way to do this? should it be done elsewhere ? + */ + SampleEvent.initSampleVariables(); + JMeterContextService.startTest(); try { PreCompiler compiler = new PreCompiler(); Modified: jmeter/trunk/src/core/org/apache/jmeter/samplers/SampleEvent.java URL: http://svn.apache.org/viewvc/jmeter/trunk/src/core/org/apache/jmeter/samplers/SampleEvent.java?rev=1461911&r1=1461910&r2=1461911&view=diff ============================================================================== --- jmeter/trunk/src/core/org/apache/jmeter/samplers/SampleEvent.java (original) +++ jmeter/trunk/src/core/org/apache/jmeter/samplers/SampleEvent.java Thu Mar 28 01:12:10 2013 @@ -21,6 +21,7 @@ package org.apache.jmeter.samplers; import java.io.Serializable; import java.net.InetAddress; import java.net.UnknownHostException; +import java.util.Arrays; import org.apache.jmeter.threads.JMeterVariables; import org.apache.jmeter.util.JMeterUtils; @@ -37,16 +38,18 @@ public class SampleEvent implements Seri private static final long serialVersionUID = 232L; + /** The property {@value} is used to define additional variables to be saved */ public static final String SAMPLE_VARIABLES = "sample_variables"; // $NON-NLS-1$ public static final String HOSTNAME; // List of variable names to be saved in JTL files - private static final String[] variableNames; + private static volatile String[] variableNames = new String[0]; // The values. Entries may be null, but there will be the correct number. private final String[] values; + // The hostname cannot change during a run, so safe to cache it just once static { String hn=""; try { @@ -55,16 +58,19 @@ public class SampleEvent implements Seri log.error("Cannot obtain local host name "+e); } HOSTNAME=hn; + initSampleVariables(); + } + /** + * Set up the additional variable names to be saved + * from the value in the {@link #SAMPLE_VARIABLES} property + */ + public static void initSampleVariables() { String vars = JMeterUtils.getProperty(SAMPLE_VARIABLES); - variableNames=vars != null ? vars.split(",") : new String[0]; - int varCount=variableNames.length; - if (varCount>0){ - log.info(varCount + " sample_variables have been declared: "+vars); - } + variableNames=vars != null ? vars.split(",") : new String[0]; + log.info("List of sample_variables: " + Arrays.toString(variableNames)); } - private final SampleResult result; private final String threadGroup; // TODO appears to duplicate the threadName field in SampleResult Modified: jmeter/trunk/xdocs/changes.xml URL: http://svn.apache.org/viewvc/jmeter/trunk/xdocs/changes.xml?rev=1461911&r1=1461910&r2=1461911&view=diff ============================================================================== --- jmeter/trunk/xdocs/changes.xml (original) +++ jmeter/trunk/xdocs/changes.xml Thu Mar 28 01:12:10 2013 @@ -109,7 +109,8 @@ This does not affect JMeter operation.

Listeners

  • 54589 - View Results Tree have a lot of Garbage characters if html page uses double-byte charset
  • -
  • 5473 - StringIndexOutOfBoundsException at SampleResult.getSampleLabel() if key_on_threadname=false when using Statistical mode
  • +
  • 54753 - StringIndexOutOfBoundsException at SampleResult.getSampleLabel() if key_on_threadname=false when using Statistical mode
  • +
  • 54865 - ArrayIndexOutOfBoundsException if "sample_variable" is set in client but not server

Timers, Assertions, Config, Pre- & Post-Processors