Author: sebb Date: Sat Feb 18 15:16:13 2006 New Revision: 378794 URL: http://svn.apache.org/viewcvs?rev=378794&view=rev Log: Bug 36430 - Counter now uses long rather than int to increase the range
Modified: jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/CounterConfig.java jakarta/jmeter/branches/rel-2-1/xdocs/changes.xml jakarta/jmeter/branches/rel-2-1/xdocs/usermanual/component_reference.xml Modified: jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/CounterConfig.java URL: http://svn.apache.org/viewcvs/jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/CounterConfig.java?rev=378794&r1=378793&r2=378794&view=diff ============================================================================== --- jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/CounterConfig.java (original) +++ jakarta/jmeter/branches/rel-2-1/src/components/org/apache/jmeter/modifiers/CounterConfig.java Sat Feb 18 15:16:13 2006 @@ -1,6 +1,5 @@ -// $Header$ /* - * Copyright 2002-2004 The Apache Software Foundation. + * Copyright 2002-2006 The Apache Software Foundation. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -25,7 +24,7 @@ import org.apache.jmeter.engine.util.NoThreadClone; import org.apache.jmeter.testelement.AbstractTestElement; import org.apache.jmeter.testelement.property.BooleanProperty; -import org.apache.jmeter.testelement.property.IntegerProperty; +import org.apache.jmeter.testelement.property.LongProperty; import org.apache.jmeter.threads.JMeterContextService; import org.apache.jmeter.threads.JMeterVariables; import org.apache.jorphan.logging.LoggingManager; @@ -47,7 +46,7 @@ public final static String VAR_NAME = "CounterConfig.name"; - private int globalCounter = -1; + private long globalCounter = -1; /** * @see LoopIterationListener#iterationStart(LoopIterationEvent) @@ -55,25 +54,25 @@ public synchronized void iterationStart(LoopIterationEvent event) { // Cannot use getThreadContext() as not cloned per thread JMeterVariables variables = JMeterContextService.getContext().getVariables(); - int start = getStart(), end = getEnd(), increment = getIncrement(); + long start = getStart(), end = getEnd(), increment = getIncrement(); if (!isPerUser()) { if (globalCounter == -1 || globalCounter > end) { globalCounter = start; } - variables.put(getVarName(), Integer.toString(globalCounter)); + variables.put(getVarName(), Long.toString(globalCounter)); globalCounter += increment; } else { String value = variables.get(getVarName()); if (value == null) { - variables.put(getVarName(), Integer.toString(start)); + variables.put(getVarName(), Long.toString(start)); } else { try { - int current = Integer.parseInt(value); + long current = Long.parseLong(value); current += increment; if (current > end) { current = start; } - variables.put(getVarName(), Integer.toString(current)); + variables.put(getVarName(), Long.toString(current)); } catch (NumberFormatException e) { log.info("Bad number in Counter config", e); } @@ -81,40 +80,40 @@ } } - public void setStart(int start) { - setProperty(new IntegerProperty(START, start)); + public void setStart(long start) { + setProperty(new LongProperty(START, start)); } public void setStart(String start) { setProperty(START, start); } - public int getStart() { - return getPropertyAsInt(START); + public long getStart() { + return getPropertyAsLong(START); } - public void setEnd(int end) { - setProperty(new IntegerProperty(END, end)); + public void setEnd(long end) { + setProperty(new LongProperty(END, end)); } public void setEnd(String end) { setProperty(END, end); } - public int getEnd() { - return getPropertyAsInt(END); + public long getEnd() { + return getPropertyAsLong(END); } - public void setIncrement(int inc) { - setProperty(new IntegerProperty(INCREMENT, inc)); + public void setIncrement(long inc) { + setProperty(new LongProperty(INCREMENT, inc)); } public void setIncrement(String incr) { setProperty(INCREMENT, incr); } - public int getIncrement() { - return getPropertyAsInt(INCREMENT); + public long getIncrement() { + return getPropertyAsLong(INCREMENT); } public void setIsPerUser(boolean isPer) { Modified: jakarta/jmeter/branches/rel-2-1/xdocs/changes.xml URL: http://svn.apache.org/viewcvs/jakarta/jmeter/branches/rel-2-1/xdocs/changes.xml?rev=378794&r1=378793&r2=378794&view=diff ============================================================================== --- jakarta/jmeter/branches/rel-2-1/xdocs/changes.xml (original) +++ jakarta/jmeter/branches/rel-2-1/xdocs/changes.xml Sat Feb 18 15:16:13 2006 @@ -73,6 +73,7 @@ <li>Bug 38646 - Regex Extractor now clears old variables on match failure</li> <li>Bug 38640 - fix WebService Sampler pooling</li> <li>Bug 38474 - HTML Link Parser doesn't follow frame links</li> +<li>Bug 36430 - Counter now uses long rather than int to increase the range</li> </ul> <h4>Other changes</h4> Modified: jakarta/jmeter/branches/rel-2-1/xdocs/usermanual/component_reference.xml URL: http://svn.apache.org/viewcvs/jakarta/jmeter/branches/rel-2-1/xdocs/usermanual/component_reference.xml?rev=378794&r1=378793&r2=378794&view=diff ============================================================================== --- jakarta/jmeter/branches/rel-2-1/xdocs/usermanual/component_reference.xml (original) +++ jakarta/jmeter/branches/rel-2-1/xdocs/usermanual/component_reference.xml Sat Feb 18 15:16:13 2006 @@ -2490,7 +2490,7 @@ in the Thread Group. The counter config lets the user configure a starting point, a maximum, and the increment. The counter will loop from the start to the max, and then start over with the start, continuing on like that until the test is ended. </p> -<p>The counter uses an int to store the value, so the range is from -2^^31 to 2^^31-1, i.e. -2147483648 to 2147483647.</p> +<p>From version 2.1.2, the counter now uses a long to store the value, so the range is from -2^63 to 2^63-1.</p> </description> <properties> <property name="Name" required="">Descriptive name for this element that is shown in the tree.</property> --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]