Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
7.1
-
None
-
None
Description
When I go to sort on a multi-valued field in a 2 shard collection, which has trie fields the query fails.
To reproduce we need 2+ shards, a multi-valued trie field and "desc" sort criteria.
Here's my schema
<dynamicField name="*_is" type="int" indexed="true" stored="true" multiValued="true" docValues="true"/> <fieldType class="solr.TrieIntField" docValues="true" name="int" positionIncrementGap="0" precisionStep="0"/> <dynamicField name="*_i" type="pint" indexed="true" stored="true" multiValued="true"/> <fieldType name="pint" class="solr.IntPointField" docValues="true"/>
Now If I add a few docs
[ {"id" : "1", "test_is" : ["1", "2", "3", "4", "5"], "test_i" : ["1", "2", "3", "4", "5"]}, {"id" : "2", "test_is" : ["1", "2", "3", "4", "5"], "test_i" : ["1", "2", "3", "4", "5"]}, {"id" : "3", "test_is" : ["1", "2", "3", "4", "5"], "test_i" : ["1", "2", "3", "4", "5"]} ]
Works:
http://localhost:8983/solr/gettingstarted/select?q=*:*&sort=field(test_i,max)%20desc
Doesn't Work:
http://localhost:8983/solr/gettingstarted/select?q=*:*&sort=field(test_is,max)%20desc
To be more clear when I say it doesn't work , the query throws and error and here's the stack trace for it:
ERROR - 2018-06-06 22:55:06.599; [c:gettingstarted s:shard2 r:core_node8 x:gettingstarted_shard2_replica_n5] org.apache.solr.common.SolrException; null:java.lang.ClassCastException: java.lang.String cannot be cast to org.apache.lucene.util.BytesRef at org.apache.lucene.search.FieldComparator$TermOrdValComparator.compareValues(FieldComparator.java:561) at org.apache.solr.handler.component.ShardFieldSortedHitQueue$1.compare(ShardFieldSortedHitQueue.java:161) at org.apache.solr.handler.component.ShardFieldSortedHitQueue$1.compare(ShardFieldSortedHitQueue.java:153) at org.apache.solr.handler.component.ShardFieldSortedHitQueue.lessThan(ShardFieldSortedHitQueue.java:91) at org.apache.solr.handler.component.ShardFieldSortedHitQueue.lessThan(ShardFieldSortedHitQueue.java:33) at org.apache.lucene.util.PriorityQueue.upHeap(PriorityQueue.java:263) at org.apache.lucene.util.PriorityQueue.add(PriorityQueue.java:140) at org.apache.lucene.util.PriorityQueue.insertWithOverflow(PriorityQueue.java:156) at org.apache.solr.handler.component.QueryComponent.mergeIds(QueryComponent.java:924) at org.apache.solr.handler.component.QueryComponent.handleRegularResponses(QueryComponent.java:585) at org.apache.solr.handler.component.QueryComponent.handleResponses(QueryComponent.java:564) at org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:423) at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:177) at org.apache.solr.core.SolrCore.execute(SolrCore.java:2484) at org.apache.solr.servlet.HttpSolrCall.execute(HttpSolrCall.java:720) at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:526)
Attachments
Attachments
Issue Links
- relates to
-
SOLR-16172 Error when combining Grouping with Childfield sorting with more than one Shard
- Open
- links to