You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by rm...@apache.org on 2014/03/17 20:02:18 UTC
svn commit: r1578517 - in /lucene/dev/branches/lucene_solr_4_7: ./ lucene/
lucene/analysis/
lucene/analysis/common/src/java/org/apache/lucene/analysis/synonym/
lucene/analysis/common/src/test/org/apache/lucene/analysis/synonym/
Author: rmuir
Date: Mon Mar 17 19:02:17 2014
New Revision: 1578517
URL: http://svn.apache.org/r1578517
Log:
LUCENE-5473: the contructor function of SynonymFilter can not report exception correctly
Modified:
lucene/dev/branches/lucene_solr_4_7/ (props changed)
lucene/dev/branches/lucene_solr_4_7/lucene/ (props changed)
lucene/dev/branches/lucene_solr_4_7/lucene/CHANGES.txt
lucene/dev/branches/lucene_solr_4_7/lucene/analysis/ (props changed)
lucene/dev/branches/lucene_solr_4_7/lucene/analysis/common/src/java/org/apache/lucene/analysis/synonym/SynonymFilter.java
lucene/dev/branches/lucene_solr_4_7/lucene/analysis/common/src/test/org/apache/lucene/analysis/synonym/TestSynonymMapFilter.java
Modified: lucene/dev/branches/lucene_solr_4_7/lucene/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene_solr_4_7/lucene/CHANGES.txt?rev=1578517&r1=1578516&r2=1578517&view=diff
==============================================================================
--- lucene/dev/branches/lucene_solr_4_7/lucene/CHANGES.txt (original)
+++ lucene/dev/branches/lucene_solr_4_7/lucene/CHANGES.txt Mon Mar 17 19:02:17 2014
@@ -17,6 +17,10 @@ Bug Fixes
empty list of clauses. This can happen for example, when a wildcard matches
no terms. (Tim Allison via Robert Muir)
+* LUCENE-5473: Throw IllegalArgumentException, not
+ NullPointerException, if the synonym map is empty when creating
+ SynonymFilter (å¸
å¹¿åº via Mike McCandless)
+
* LUCENE-5532: AutomatonQuery.hashCode was not thread-safe. (Robert Muir)
Build
Modified: lucene/dev/branches/lucene_solr_4_7/lucene/analysis/common/src/java/org/apache/lucene/analysis/synonym/SynonymFilter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene_solr_4_7/lucene/analysis/common/src/java/org/apache/lucene/analysis/synonym/SynonymFilter.java?rev=1578517&r1=1578516&r2=1578517&view=diff
==============================================================================
--- lucene/dev/branches/lucene_solr_4_7/lucene/analysis/common/src/java/org/apache/lucene/analysis/synonym/SynonymFilter.java (original)
+++ lucene/dev/branches/lucene_solr_4_7/lucene/analysis/common/src/java/org/apache/lucene/analysis/synonym/SynonymFilter.java Mon Mar 17 19:02:17 2014
@@ -263,10 +263,10 @@ public final class SynonymFilter extends
this.synonyms = synonyms;
this.ignoreCase = ignoreCase;
this.fst = synonyms.fst;
- this.fstReader = fst.getBytesReader();
if (fst == null) {
throw new IllegalArgumentException("fst must be non-null");
}
+ this.fstReader = fst.getBytesReader();
// Must be 1+ so that when roll buffer is at full
// lookahead we can distinguish this full buffer from
Modified: lucene/dev/branches/lucene_solr_4_7/lucene/analysis/common/src/test/org/apache/lucene/analysis/synonym/TestSynonymMapFilter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene_solr_4_7/lucene/analysis/common/src/test/org/apache/lucene/analysis/synonym/TestSynonymMapFilter.java?rev=1578517&r1=1578516&r2=1578517&view=diff
==============================================================================
--- lucene/dev/branches/lucene_solr_4_7/lucene/analysis/common/src/test/org/apache/lucene/analysis/synonym/TestSynonymMapFilter.java (original)
+++ lucene/dev/branches/lucene_solr_4_7/lucene/analysis/common/src/test/org/apache/lucene/analysis/synonym/TestSynonymMapFilter.java Mon Mar 17 19:02:17 2014
@@ -929,4 +929,15 @@ public class TestSynonymMapFilter extend
new int[] { 8, 22, 15, 22 },
new int[] { 1, 0, 1, 1 });
}
+
+ public void testEmpty() throws Exception {
+ Tokenizer tokenizer = new MockTokenizer(new StringReader("aa bb"));
+ try {
+ new SynonymFilter(tokenizer, new SynonymMap.Builder(true).build(), true);
+ fail("did not hit expected exception");
+ } catch (IllegalArgumentException iae) {
+ // expected
+ assertEquals("fst must be non-null", iae.getMessage());
+ }
+ }
}