Hey folks, I would occasionally bump into an NPE in QueryComponent.mergeIds when using timeAllowed. Here's a little patch which seems to fix the issue. I suspect sortFieldValues can be null depending on when the query execution is aborted?
- Bram diff --git a/solr/core/src/java/org/apache/solr/handler/component/QueryComponent.java b/solr/core/src/java/org/apache/solr/handler/component/QueryComponent.java index 853da1c3a38..c7e7c1e6b86 100644 --- a/solr/core/src/java/org/apache/solr/handler/component/QueryComponent.java +++ b/solr/core/src/java/org/apache/solr/handler/component/QueryComponent.java @@ -932,7 +932,7 @@ public class QueryComponent extends SearchComponent @SuppressWarnings({"rawtypes"}) NamedList sortFieldValues = (NamedList)(srsp.getSolrResponse().getResponse().get("sort_values")); - if (sortFieldValues.size()==0 && // we bypass merging this response only if it's partial itself + if ((null == sortFieldValues || sortFieldValues.size()==0) && // we bypass merging this response only if it's partial itself thisResponseIsPartial) { // but not the previous one!! continue; //fsv timeout yields empty sort_vlaues } --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org