Browse Source

Check if binaryDocValues is null while sorting similar keywords

sunyj 8 years ago
parent
commit
c562443e87

+ 5 - 3
src/main/java/com/uas/search/sort/SimilarValuesFieldComparator.java

@@ -1,12 +1,11 @@
 package com.uas.search.sort;
 
-import java.io.IOException;
-
+import com.uas.search.util.CharUtils;
 import org.apache.lucene.index.BinaryDocValues;
 import org.apache.lucene.index.LeafReaderContext;
 import org.apache.lucene.search.SimpleFieldComparator;
 
-import com.uas.search.util.CharUtils;
+import java.io.IOException;
 
 /**
  * 用于联想词的排序
@@ -99,6 +98,9 @@ public class SimilarValuesFieldComparator extends SimpleFieldComparator<String>
 	@Override
 	protected void doSetNextReader(LeafReaderContext context) throws IOException {
 		binaryDocValues = context.reader().getBinaryDocValues(fieldname);
+		if(binaryDocValues == null){
+			throw new IllegalStateException("索引中不存在 binaryDocValues :" + fieldname);
+		}
 	}
 
 	@Override