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 2011/01/18 17:12:43 UTC
svn commit: r1060438 - in
/lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index:
ConcurrentMergeScheduler.java IndexWriter.java
Author: mikemccand
Date: Tue Jan 18 16:12:42 2011
New Revision: 1060438
URL: http://svn.apache.org/viewvc?rev=1060438&view=rev
Log:
typo in comment
Modified:
lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/ConcurrentMergeScheduler.java
lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/IndexWriter.java
Modified: lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/ConcurrentMergeScheduler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/ConcurrentMergeScheduler.java?rev=1060438&r1=1060437&r2=1060438&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/ConcurrentMergeScheduler.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/ConcurrentMergeScheduler.java Tue Jan 18 16:12:42 2011
@@ -283,7 +283,9 @@ public class ConcurrentMergeScheduler ex
protected synchronized int mergeThreadCount() {
int count = 0;
for (MergeThread mt : mergeThreads) {
- if (mt.isAlive()) count++;
+ if (mt.isAlive() && mt.getCurrentMerge() != null) {
+ count++;
+ }
}
return count;
}
@@ -338,10 +340,16 @@ public class ConcurrentMergeScheduler ex
while (mergeThreadCount() >= maxMergeCount) {
startStallTime = System.currentTimeMillis();
if (verbose()) {
- message(" too many merges; stalling...");
+ message(" too many merges (" + mergeThreadCount() + " vs " + maxMergeCount + "); stalling...");
}
+ // NOTE: in theory we should be able to do
+ // simply wait(), but, as a defense against
+ // thread timing hazards where notifyAll()
+ // fails to be called, we wait for at most 1
+ // second and then re-check:
try {
- wait();
+ // nocommit
+ wait(10000000);
} catch (InterruptedException ie) {
throw new ThreadInterruptedException(ie);
}
@@ -577,4 +585,5 @@ public class ConcurrentMergeScheduler ex
public static void setTestMode() {
allInstances = new ArrayList<ConcurrentMergeScheduler>();
}
+
}
Modified: lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/IndexWriter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/IndexWriter.java?rev=1060438&r1=1060437&r2=1060438&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/IndexWriter.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/IndexWriter.java Tue Jan 18 16:12:42 2011
@@ -4078,7 +4078,7 @@ public class IndexWriter implements Clos
// NOTE: the callers of this method should in theory
// be able to do simply wait(), but, as a defense
// against thread timing hazards where notifyAll()
- // falls to be called, we wait for at most 1 second
+ // fails to be called, we wait for at most 1 second
// and then return so caller can check if wait
// conditions are satisfied:
try {