File languagetool-4.8-lucene-8.patch of Package languagetool
diff -urEbwB languagetool-4.8/languagetool-core/src/main/java/org/languagetool/languagemodel/LuceneSingleIndexLanguageModel.java languagetool-4.8.new/languagetool-core/src/main/java/org/languagetool/languagemodel/LuceneSingleIndexLanguageModel.java
--- languagetool-4.8/languagetool-core/src/main/java/org/languagetool/languagemodel/LuceneSingleIndexLanguageModel.java 2019-12-27 11:17:28.000000000 +0100
+++ languagetool-4.8.new/languagetool-core/src/main/java/org/languagetool/languagemodel/LuceneSingleIndexLanguageModel.java 2020-04-06 19:30:06.188433021 +0200
@@ -147,10 +147,10 @@
try {
RegexpQuery query = new RegexpQuery(new Term("totalTokenCount", ".*"));
TopDocs docs = luceneSearcher.searcher.search(query, 1000); // Integer.MAX_VALUE might cause OOE on wrong index
- if (docs.totalHits == 0) {
+ if (docs.totalHits.value == 0) {
throw new RuntimeException("Expected 'totalTokenCount' meta documents not found in 1grams index: " + luceneSearcher.directory);
- } else if (docs.totalHits > 1000) {
- throw new RuntimeException("Did not expect more than 1000 'totalTokenCount' meta documents: " + docs.totalHits + " in " + luceneSearcher.directory);
+ } else if (docs.totalHits.value > 1000) {
+ throw new RuntimeException("Did not expect more than 1000 'totalTokenCount' meta documents: " + docs.totalHits.value + " in " + luceneSearcher.directory);
} else {
long result = 0;
for (ScoreDoc scoreDoc : docs.scoreDocs) {
@@ -195,9 +195,9 @@
long result = 0;
try {
TopDocs docs = luceneSearcher.searcher.search(new TermQuery(term), 2000);
- if (docs.totalHits > 2000) {
+ if (docs.totalHits.value > 2000) {
throw new RuntimeException("More than 2000 matches for '" + term + "' not supported for performance reasons: " +
- docs.totalHits + " matches in " + luceneSearcher.directory);
+ docs.totalHits.value + " matches in " + luceneSearcher.directory);
}
for (ScoreDoc scoreDoc : docs.scoreDocs) {
String countStr = luceneSearcher.reader.document(scoreDoc.doc).get("count");
diff -urEbwB languagetool-4.8/languagetool-standalone/src/main/java/org/languagetool/dev/HomophoneOccurrenceDumper.java languagetool-4.8.new/languagetool-standalone/src/main/java/org/languagetool/dev/HomophoneOccurrenceDumper.java
--- languagetool-4.8/languagetool-standalone/src/main/java/org/languagetool/dev/HomophoneOccurrenceDumper.java 2019-12-27 11:17:28.000000000 +0100
+++ languagetool-4.8.new/languagetool-standalone/src/main/java/org/languagetool/dev/HomophoneOccurrenceDumper.java 2020-04-06 21:13:30.697861690 +0200
@@ -19,7 +19,7 @@
package org.languagetool.dev;
import org.apache.lucene.index.Fields;
-import org.apache.lucene.index.MultiFields;
+import org.apache.lucene.index.MultiTerms;
import org.apache.lucene.index.Terms;
import org.apache.lucene.index.TermsEnum;
import org.apache.lucene.util.BytesRef;
@@ -111,8 +111,7 @@
private TermsEnum getIterator() throws IOException {
LuceneSearcher luceneSearcher = getLuceneSearcher(3);
- Fields fields = MultiFields.getFields(luceneSearcher.getReader());
- Terms terms = fields.terms("ngram");
+ Terms terms = MultiTerms.getTerms(luceneSearcher.getReader(), "ngram");
return terms.iterator();
}