You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by jb...@apache.org on 2018/01/09 01:24:41 UTC

[2/2] lucene-solr:branch_7x: SOLR-10716: Improve error handling

SOLR-10716: Improve error handling


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

Branch: refs/heads/branch_7x
Commit: 9ac376a0c4668072f223dd943e148cf5156b8765
Parents: 63b3e55
Author: Joel Bernstein <jb...@apache.org>
Authored: Mon Jan 8 20:12:43 2018 -0500
Committer: Joel Bernstein <jb...@apache.org>
Committed: Mon Jan 8 20:20:41 2018 -0500

----------------------------------------------------------------------
 .../client/solrj/io/eval/TermVectorsEvaluator.java  | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/9ac376a0/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/TermVectorsEvaluator.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/TermVectorsEvaluator.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/TermVectorsEvaluator.java
index 343e65c..8bf050d 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/TermVectorsEvaluator.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/TermVectorsEvaluator.java
@@ -68,6 +68,20 @@ public class TermVectorsEvaluator extends RecursiveObjectEvaluator implements Ma
 
     if (objects.length == 1) {
       //Just docs
+      if(!(objects[0] instanceof List)) {
+        throw new IOException("The termVectors function expects a list of Tuples as a parameter.");
+      } else {
+        List list = (List)objects[0];
+        if(list.size() > 0) {
+          Object o = list.get(0);
+          if(!(o instanceof Tuple)) {
+            throw new IOException("The termVectors function expects a list of Tuples as a parameter.");
+          }
+        } else {
+          throw new IOException("Empty list was passed as a parameter to termVectors function.");
+        }
+      }
+
       List<Tuple> tuples = (List<Tuple>) objects[0];
       TreeMap<String, Integer> docFreqs = new TreeMap();
       List<String> features = new ArrayList();
@@ -157,7 +171,7 @@ public class TermVectorsEvaluator extends RecursiveObjectEvaluator implements Ma
       matrix.setAttribute("docFreqs", docFreqs);
       return matrix;
     } else {
-      throw new IOException("The termVectors function a single positional parameter.");
+      throw new IOException("The termVectors function takes a single positional parameter.");
     }
   }
 }