mirror of https://github.com/apache/jmeter.git
Bug 59133 - Regression in custom Thread Group in nightly build before 3.0 (6 march 2016)
#resolve #164
https://github.com/apache/jmeter/pull/164
Bugzilla Id: 59133
git-svn-id: https://svn.apache.org/repos/asf/jmeter/trunk@1734992 13f79535-47bb-0310-9956-ffa450edef68
Former-commit-id: 28c3e8d2e9
This commit is contained in:
parent
8dedc3bd87
commit
516d01b45c
|
|
@ -235,39 +235,40 @@ public class JMeterThread implements Runnable, Interruptible {
|
|||
|
||||
try {
|
||||
iterationListener = initRun(threadContext);
|
||||
Sampler sam = threadGroupLoopController.next();
|
||||
while (running && sam != null) {
|
||||
processSampler(sam, null, threadContext);
|
||||
threadContext.cleanAfterSample();
|
||||
|
||||
// restart of the next loop
|
||||
// - was request through threadContext
|
||||
// - or the last sample failed AND the onErrorStartNextLoop option is enabled
|
||||
if(threadContext.isRestartNextLoop()
|
||||
|| (onErrorStartNextLoop
|
||||
&& !TRUE.equals(threadContext.getVariables().get(LAST_SAMPLE_OK))))
|
||||
{
|
||||
while (running) {
|
||||
Sampler sam = threadGroupLoopController.next();
|
||||
while (running && sam != null) {
|
||||
processSampler(sam, null, threadContext);
|
||||
threadContext.cleanAfterSample();
|
||||
|
||||
if(log.isDebugEnabled()) {
|
||||
if(onErrorStartNextLoop
|
||||
&& !threadContext.isRestartNextLoop()) {
|
||||
log.debug("StartNextLoop option is on, Last sample failed, starting next loop");
|
||||
// restart of the next loop
|
||||
// - was requested through threadContext
|
||||
// - or the last sample failed AND the onErrorStartNextLoop option is enabled
|
||||
if(threadContext.isRestartNextLoop()
|
||||
|| (onErrorStartNextLoop
|
||||
&& !TRUE.equals(threadContext.getVariables().get(LAST_SAMPLE_OK))))
|
||||
{
|
||||
if(log.isDebugEnabled()) {
|
||||
if(onErrorStartNextLoop
|
||||
&& !threadContext.isRestartNextLoop()) {
|
||||
log.debug("StartNextLoop option is on, Last sample failed, starting next loop");
|
||||
}
|
||||
}
|
||||
|
||||
triggerEndOfLoopOnParentControllers(sam, threadContext);
|
||||
sam = null;
|
||||
threadContext.getVariables().put(LAST_SAMPLE_OK, TRUE);
|
||||
threadContext.setRestartNextLoop(false);
|
||||
}
|
||||
else {
|
||||
sam = threadGroupLoopController.next();
|
||||
}
|
||||
|
||||
triggerEndOfLoopOnParentControllers(sam, threadContext);
|
||||
threadContext.getVariables().put(LAST_SAMPLE_OK, TRUE);
|
||||
threadContext.setRestartNextLoop(false);
|
||||
sam = null;
|
||||
}
|
||||
|
||||
if (sam == null && threadGroupLoopController.isDone()) {
|
||||
if (threadGroupLoopController.isDone()) {
|
||||
running = false;
|
||||
log.info("Thread is done: " + threadName);
|
||||
}
|
||||
else {
|
||||
sam = threadGroupLoopController.next();
|
||||
}
|
||||
}
|
||||
}
|
||||
// Might be found by contoller.next()
|
||||
|
|
|
|||
|
|
@ -402,6 +402,7 @@ Summary
|
|||
<li><bug>59055</bug>JMeter report generator : When generation is not launched from jmeter/bin folder report-template is not found</li>
|
||||
<li><bug>58986</bug>Report/Dashboard reuses the same output directory</li>
|
||||
<li><bug>59096</bug>Search Feature : Case insensitive search is not really case insensitive</li>
|
||||
<li><bug>59133</bug>Regression in custom Thread Group in nightly build before 3.0 (6 march 2016). Contributed by Ubik Load Pack (support at ubikloadpack.com)</li>
|
||||
</ul>
|
||||
|
||||
<!-- =================== Thanks =================== -->
|
||||
|
|
|
|||
Loading…
Reference in New Issue