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 2016/12/02 22:42:40 UTC
lucene-solr:branch_6x: LUCENE-7576: fix other codecs to detect when
special case automaton is passed to Terms.intersect
Repository: lucene-solr
Updated Branches:
refs/heads/branch_6x 660f08a0b -> a195a9868
LUCENE-7576: fix other codecs to detect when special case automaton is passed to Terms.intersect
Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/a195a986
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/a195a986
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/a195a986
Branch: refs/heads/branch_6x
Commit: a195a9868a7f7b57c56b3b8b6b8c9ada36109144
Parents: 660f08a
Author: Mike McCandless <mi...@apache.org>
Authored: Fri Dec 2 17:42:27 2016 -0500
Committer: Mike McCandless <mi...@apache.org>
Committed: Fri Dec 2 17:42:27 2016 -0500
----------------------------------------------------------------------
.../org/apache/lucene/codecs/memory/DirectPostingsFormat.java | 3 +++
.../java/org/apache/lucene/codecs/memory/FSTOrdTermsReader.java | 3 +++
.../src/java/org/apache/lucene/codecs/memory/FSTTermsReader.java | 3 +++
3 files changed, 9 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a195a986/lucene/codecs/src/java/org/apache/lucene/codecs/memory/DirectPostingsFormat.java
----------------------------------------------------------------------
diff --git a/lucene/codecs/src/java/org/apache/lucene/codecs/memory/DirectPostingsFormat.java b/lucene/codecs/src/java/org/apache/lucene/codecs/memory/DirectPostingsFormat.java
index 3ce2abe..00f25cf 100644
--- a/lucene/codecs/src/java/org/apache/lucene/codecs/memory/DirectPostingsFormat.java
+++ b/lucene/codecs/src/java/org/apache/lucene/codecs/memory/DirectPostingsFormat.java
@@ -659,6 +659,9 @@ public final class DirectPostingsFormat extends PostingsFormat {
@Override
public TermsEnum intersect(CompiledAutomaton compiled, final BytesRef startTerm) {
+ if (compiled.type != CompiledAutomaton.AUTOMATON_TYPE.NORMAL) {
+ throw new IllegalArgumentException("please use CompiledAutomaton.getTermsEnum instead");
+ }
return new DirectIntersectTermsEnum(compiled, startTerm);
}
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a195a986/lucene/codecs/src/java/org/apache/lucene/codecs/memory/FSTOrdTermsReader.java
----------------------------------------------------------------------
diff --git a/lucene/codecs/src/java/org/apache/lucene/codecs/memory/FSTOrdTermsReader.java b/lucene/codecs/src/java/org/apache/lucene/codecs/memory/FSTOrdTermsReader.java
index 305c419..97bbea3 100644
--- a/lucene/codecs/src/java/org/apache/lucene/codecs/memory/FSTOrdTermsReader.java
+++ b/lucene/codecs/src/java/org/apache/lucene/codecs/memory/FSTOrdTermsReader.java
@@ -270,6 +270,9 @@ public class FSTOrdTermsReader extends FieldsProducer {
@Override
public TermsEnum intersect(CompiledAutomaton compiled, BytesRef startTerm) throws IOException {
+ if (compiled.type != CompiledAutomaton.AUTOMATON_TYPE.NORMAL) {
+ throw new IllegalArgumentException("please use CompiledAutomaton.getTermsEnum instead");
+ }
return new IntersectTermsEnum(compiled, startTerm);
}
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/a195a986/lucene/codecs/src/java/org/apache/lucene/codecs/memory/FSTTermsReader.java
----------------------------------------------------------------------
diff --git a/lucene/codecs/src/java/org/apache/lucene/codecs/memory/FSTTermsReader.java b/lucene/codecs/src/java/org/apache/lucene/codecs/memory/FSTTermsReader.java
index 775f692..b120656 100644
--- a/lucene/codecs/src/java/org/apache/lucene/codecs/memory/FSTTermsReader.java
+++ b/lucene/codecs/src/java/org/apache/lucene/codecs/memory/FSTTermsReader.java
@@ -250,6 +250,9 @@ public class FSTTermsReader extends FieldsProducer {
@Override
public TermsEnum intersect(CompiledAutomaton compiled, BytesRef startTerm) throws IOException {
+ if (compiled.type != CompiledAutomaton.AUTOMATON_TYPE.NORMAL) {
+ throw new IllegalArgumentException("please use CompiledAutomaton.getTermsEnum instead");
+ }
return new IntersectTermsEnum(compiled, startTerm);
}