You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by mi...@apache.org on 2012/08/02 19:45:23 UTC

svn commit: r1368618 - /lucene/dev/trunk/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/tasks/TaskSequence.java

Author: mikemccand
Date: Thu Aug  2 17:45:23 2012
New Revision: 1368618

URL: http://svn.apache.org/viewvc?rev=1368618&view=rev
Log:
LUCENE-4177: possible fix for thread-safety issue causing test to never stop

Modified:
    lucene/dev/trunk/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/tasks/TaskSequence.java

Modified: lucene/dev/trunk/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/tasks/TaskSequence.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/tasks/TaskSequence.java?rev=1368618&r1=1368617&r2=1368618&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/tasks/TaskSequence.java (original)
+++ lucene/dev/trunk/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/tasks/TaskSequence.java Thu Aug  2 17:45:23 2012
@@ -331,7 +331,9 @@ public class TaskSequence extends PerfTa
     // Forwards top request to children
     if (runningParallelTasks != null) {
       for(ParallelTask t : runningParallelTasks) {
-        t.task.stopNow();
+        if (t != null) {
+          t.task.stopNow();
+        }
       }
     }
   }
@@ -355,6 +357,12 @@ public class TaskSequence extends PerfTa
     // run threads
     startThreads(t);
 
+    if (stopNow) {
+      for (ParallelTask task : t) {
+        task.task.stopNow();
+      }
+    }
+
     // wait for all threads to complete
     int count = 0;
     for (int i = 0; i < t.length; i++) {