You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by si...@apache.org on 2017/12/11 13:46:24 UTC

[3/3] lucene-solr:master: LUCENE-8090: Prevent stale threadstate reads in DocumentsWriterFlushControl

LUCENE-8090: Prevent stale threadstate reads in DocumentsWriterFlushControl


Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/9ad84fea
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/9ad84fea
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/9ad84fea

Branch: refs/heads/master
Commit: 9ad84fea80a459be4e85b6ff6ef0a1976bcffe38
Parents: 952f4c4
Author: Simon Willnauer <si...@apache.org>
Authored: Mon Dec 11 14:45:26 2017 +0100
Committer: Simon Willnauer <si...@apache.org>
Committed: Mon Dec 11 14:46:02 2017 +0100

----------------------------------------------------------------------
 .../java/org/apache/lucene/index/DocumentsWriterFlushControl.java  | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/9ad84fea/lucene/core/src/java/org/apache/lucene/index/DocumentsWriterFlushControl.java
----------------------------------------------------------------------
diff --git a/lucene/core/src/java/org/apache/lucene/index/DocumentsWriterFlushControl.java b/lucene/core/src/java/org/apache/lucene/index/DocumentsWriterFlushControl.java
index 761db0e..bf55991 100644
--- a/lucene/core/src/java/org/apache/lucene/index/DocumentsWriterFlushControl.java
+++ b/lucene/core/src/java/org/apache/lucene/index/DocumentsWriterFlushControl.java
@@ -716,7 +716,7 @@ final class DocumentsWriterFlushControl implements Accountable {
     return infoStream;
   }
 
-  ThreadState findLargestNonPendingWriter() {
+  synchronized ThreadState findLargestNonPendingWriter() {
     ThreadState maxRamUsingThreadState = null;
     long maxRamSoFar = 0;
     Iterator<ThreadState> activePerThreadsIterator = allActiveThreadStates();