https://issues.apache.org/bugzilla/show_bug.cgi?id=48286
Summary: ConstantTimer's delay cannot be changed dynamically during a test Product: JMeter Version: 2.3.4 Platform: PC OS/Version: Windows XP Status: NEW Severity: major Priority: P2 Component: Main AssignedTo: jmeter-dev@jakarta.apache.org ReportedBy: vass.sa...@freemail.hu When I'm using Constant Timer in my testplan it turned out that the timer's value (the speed of the stability test) could not be changed on the fly. I was wondering why it happened, so I simply recreated the ConstantTimerGui and ConstantTimer class itself (on a different name) and logged method calls on them. interesting issue 1) It turned out, that MyTimerGui was instantiated and init'ed at the startup time of JMeter (when there were no visible TimerGUI in JMeter at all). Later on, I created a simple test plan, with an empty java sampler and with my timer. A new MyTimerGui instance was created and init'ed. A Timer object is created here through the createTestElement() on the Gui. interesting issue 2) Several methods on MyConstantTimerGui was called 5 times, just because it was created: modifyTestElment(), clearGui(), configure() and those methods, that were called by these (getDelay, setDelay, configureTestElement... interesting issue 3) When I started my plan two brand new MyTimer instance were created. The first one was just left to the garbage collection, it is never referenced again, as far as I see. On the second one the iterationStart() and the delay() methods were called, on each round, which is OK, except I thought those methods should have been called on the firstly created Timer object (created by the Gui's createTestElement() method). interesting issue 4) (sounds like a bug to me) when I change the delay of the timer, the Gui changes the delay's value on the first created Timer object, not on which the framework is continuosuly calling the delay() and the iterationStart() methods. Summarizing it seems at the first sight, that the problem is, that two extra Timers were created on starting a test instead of using the one, which was created by the Gui component itself. But. The 3rd (used) Timer object is able to retrieve the delay's value set before starting the test, so my assumption would be that there is a problem with the property container inside the Timers... I don't know. Don't you think it would be very useful to be able to finetune a stability test during the test execution itself? For example to measure the maximum throughput of the system? Currently there is only one way I can see as solution: during cloning the Timers, the property map should not be cloned but the map's reference should be copied. But it needs some hack, since the map is a private field of the AbstractTestElement... br, Sandor -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug. --------------------------------------------------------------------- To unsubscribe, e-mail: jmeter-dev-unsubscr...@jakarta.apache.org For additional commands, e-mail: jmeter-dev-h...@jakarta.apache.org