[ 
https://issues.apache.org/jira/browse/SOLR-9141?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

James Dyer updated SOLR-9141:
-----------------------------
    Attachment: SOLR-9141-test.patch

bq.  it appears that there is some scenario, possibly a single shard scenario, 
where the count is returned as an int

Indeed, if we randomize the # of shards we can reproduce this easily. See 
patch: [^SOLR-9141-test.patch] .  

{noformat}
java.io.IOException: java.lang.ClassCastException: java.lang.Integer cannot be 
cast to java.lang.Long
        at 
__randomizedtesting.SeedInfo.seed([530A362A02C855B3:F5E84F942E41E274]:0)
        at 
org.apache.solr.client.solrj.io.stream.FacetStream.open(FacetStream.java:351)
... etc ...
        at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.ClassCastException: java.lang.Integer cannot be cast to 
java.lang.Long
        at 
org.apache.solr.client.solrj.io.stream.FacetStream.fillTuples(FacetStream.java:506)
        at 
org.apache.solr.client.solrj.io.stream.FacetStream.getTuples(FacetStream.java:462)
        at 
org.apache.solr.client.solrj.io.stream.FacetStream.open(FacetStream.java:348)
        ... 41 more
{noformat}

In fact, several of the test cases in this class fail when there is only 1 
shard, but I haven't looked yet into why, or if these are valid failures.

> ClassCastException occurs in /sql request handler using GROUP BY clause.
> ------------------------------------------------------------------------
>
>                 Key: SOLR-9141
>                 URL: https://issues.apache.org/jira/browse/SOLR-9141
>             Project: Solr
>          Issue Type: Bug
>          Components: Parallell SQL
>    Affects Versions: 6.0
>            Reporter: Minoru Osuka
>            Assignee: Joel Bernstein
>         Attachments: SOLR-9141-test.patch, SOLR-9141.patch
>
>
> ClassCastException occurs in /sql request handler using -ORDER BY- GROUP BY 
> clause.
> {noformat}
> $ curl --data-urlencode "stmt=select count(*) from access_log" 
> "http://localhost:8983/solr/access_log/sql?aggregationMode=facet";
> {"result-set":{"docs":[
> {"count(*)":1309},
> {"EOF":true,"RESPONSE_TIME":239}]}}
> $ curl --data-urlencode 'stmt=select response, count(*) as count from 
> access_log group by response' 
> "http://localhost:8983/solr/access_log/sql?aggregationMode=facet";
> {"result-set":{"docs":[
> {"EXCEPTION":"java.lang.ClassCastException: java.lang.Integer cannot be cast 
> to java.lang.Long","EOF":true,"RESPONSE_TIME":53}]}}
> {noformat}
> See following error messages:
> {noformat}
> 2016-05-19 10:18:06.477 ERROR (qtp1791930789-21) [c:access_log s:shard1 
> r:core_node1 x:access_log_shard1_replica1] o.a.s.c.s.i.s.ExceptionStream 
> java.io.IOException: java.lang.ClassCastException: java.lang.Integer cannot 
> be cast to java.lang.Long
>     at 
> org.apache.solr.client.solrj.io.stream.FacetStream.open(FacetStream.java:300)
>     at 
> org.apache.solr.handler.SQLHandler$LimitStream.open(SQLHandler.java:1265)
>     at 
> org.apache.solr.client.solrj.io.stream.SelectStream.open(SelectStream.java:153)
>     at 
> org.apache.solr.handler.SQLHandler$MetadataStream.open(SQLHandler.java:1511)
>     at 
> org.apache.solr.client.solrj.io.stream.ExceptionStream.open(ExceptionStream.java:47)
>     at 
> org.apache.solr.handler.StreamHandler$TimerStream.open(StreamHandler.java:362)
>     at 
> org.apache.solr.response.TextResponseWriter.writeTupleStream(TextResponseWriter.java:301)
>     at 
> org.apache.solr.response.TextResponseWriter.writeVal(TextResponseWriter.java:167)
>     at 
> org.apache.solr.response.JSONWriter.writeNamedListAsMapWithDups(JSONResponseWriter.java:183)
>     at 
> org.apache.solr.response.JSONWriter.writeNamedList(JSONResponseWriter.java:299)
>     at 
> org.apache.solr.response.JSONWriter.writeResponse(JSONResponseWriter.java:95)
>     at 
> org.apache.solr.response.JSONResponseWriter.write(JSONResponseWriter.java:60)
>     at 
> org.apache.solr.response.QueryResponseWriterUtil.writeQueryResponse(QueryResponseWriterUtil.java:65)
>     at 
> org.apache.solr.servlet.HttpSolrCall.writeResponse(HttpSolrCall.java:725)
>     at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:469)
>     at 
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:229)
>     at 
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:184)
>     at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1676)
>     at 
> org.eclipse.jetty.servlets.CrossOriginFilter.handle(CrossOriginFilter.java:308)
>     at 
> org.eclipse.jetty.servlets.CrossOriginFilter.doFilter(CrossOriginFilter.java:262)
>     at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1668)
>     at 
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:581)
>     at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
>     at 
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
>     at 
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
>     at 
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1160)
>     at 
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:511)
>     at 
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
>     at 
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1092)
>     at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
>     at 
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:213)
>     at 
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:119)
>     at 
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134)
>     at org.eclipse.jetty.server.Server.handle(Server.java:518)
>     at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:308)
>     at 
> org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:244)
>     at 
> org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:273)
>     at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95)
>     at 
> org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93)
>     at 
> org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceAndRun(ExecuteProduceConsume.java:246)
>     at 
> org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:156)
>     at 
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:654)
>     at 
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:572)
>     at java.lang.Thread.run(Thread.java:745)
> Caused by: java.lang.ClassCastException: java.lang.Integer cannot be cast to 
> java.lang.Long
>     at 
> org.apache.solr.client.solrj.io.stream.FacetStream.fillTuples(FacetStream.java:461)
>     at 
> org.apache.solr.client.solrj.io.stream.FacetStream.getTuples(FacetStream.java:420)
>     at 
> org.apache.solr.client.solrj.io.stream.FacetStream.open(FacetStream.java:297)
>     ... 43 more
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to