Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SQL: negative numbers are treated as ALIAS instead of literals in functions #33461

Closed
astefan opened this issue Sep 6, 2018 · 5 comments
Closed
Labels

Comments

@astefan
Copy link
Contributor

astefan commented Sep 6, 2018

For functions that have parameters numerics, a negative number is not treated properly. Example, the power function, and always using one of the other parameters a field: select power(salary,-1) from test_emp; gives the following stacktrace:

sql> select power(salary,-1) from test_emp;
Server error [Server encountered an error [org.elasticsearch.xpack.sql.expression.LiteralAttribute cannot be cast to org.elasticsearch.xpack.sql.expression.FieldAttribute]. [java.lang.ClassCastException: org.elasticsearch.xpack.sql.expression.LiteralAttribute cannot be cast to org.elasticsearch.xpack.sql.expression.FieldAttribute
        at org.elasticsearch.xpack.sql.expression.function.scalar.ScalarFunction.asScript(ScalarFunction.java:72)
        at org.elasticsearch.xpack.sql.expression.function.scalar.BinaryScalarFunction.asScript(BinaryScalarFunction.java:51)
        at org.elasticsearch.xpack.sql.expression.function.scalar.ScalarFunction.toAttribute(ScalarFunction.java:49)
        at org.elasticsearch.xpack.sql.planner.QueryFolder$FoldProject.rule(QueryFolder.java:140)
        at org.elasticsearch.xpack.sql.planner.QueryFolder$FoldProject.rule(QueryFolder.java:106)
        at org.elasticsearch.xpack.sql.tree.Node.lambda$transformUp$11(Node.java:188)
        at org.elasticsearch.xpack.sql.tree.Node.transformUp(Node.java:182)
        at org.elasticsearch.xpack.sql.tree.Node.transformUp(Node.java:188)
        at org.elasticsearch.xpack.sql.planner.QueryFolder$FoldingRule.apply(QueryFolder.java:548)
        at org.elasticsearch.xpack.sql.planner.QueryFolder$FoldingRule.apply(QueryFolder.java:544)
        at org.elasticsearch.xpack.sql.rule.RuleExecutor$Transformation.<init>(RuleExecutor.java:82)
        at org.elasticsearch.xpack.sql.rule.RuleExecutor.executeWithInfo(RuleExecutor.java:155)
        at org.elasticsearch.xpack.sql.rule.RuleExecutor.execute(RuleExecutor.java:130)
        at org.elasticsearch.xpack.sql.planner.QueryFolder.fold(QueryFolder.java:81)
        at org.elasticsearch.xpack.sql.planner.Planner.foldPlan(Planner.java:38)
        at org.elasticsearch.xpack.sql.planner.Planner.plan(Planner.java:28)
        at org.elasticsearch.xpack.sql.session.SqlSession.lambda$physicalPlan$4(SqlSession.java:147)
        at org.elasticsearch.action.ActionListener$1.onResponse(ActionListener.java:60)
        at org.elasticsearch.xpack.sql.session.SqlSession.lambda$optimizedPlan$3(SqlSession.java:143)
        at org.elasticsearch.action.ActionListener$1.onResponse(ActionListener.java:60)
        at org.elasticsearch.xpack.sql.session.SqlSession.lambda$preAnalyze$2(SqlSession.java:131)
        at org.elasticsearch.action.ActionListener$1.onResponse(ActionListener.java:60)
        at org.elasticsearch.xpack.sql.analysis.index.IndexResolver.lambda$resolveWithSameMapping$3(IndexResolver.java:243)
        at org.elasticsearch.action.ActionListener$1.onResponse(ActionListener.java:60)
        at org.elasticsearch.action.support.TransportAction$1.onResponse(TransportAction.java:66)
        at org.elasticsearch.action.support.TransportAction$1.onResponse(TransportAction.java:62)
        at org.elasticsearch.action.support.master.TransportMasterNodeAction$AsyncSingleAction$1.onResponse(TransportMasterNodeAction.java:172)
        at org.elasticsearch.action.support.master.TransportMasterNodeAction$AsyncSingleAction$1.onResponse(TransportMasterNodeAction.java:169)
        at org.elasticsearch.action.admin.indices.get.TransportGetIndexAction.doMasterOperation(TransportGetIndexAction.java:142)
        at org.elasticsearch.action.admin.indices.get.TransportGetIndexAction.doMasterOperation(TransportGetIndexAction.java:50)
        at org.elasticsearch.action.support.master.info.TransportClusterInfoAction.masterOperation(TransportClusterInfoAction.java:52)
        at org.elasticsearch.action.support.master.info.TransportClusterInfoAction.masterOperation(TransportClusterInfoAction.java:34)
        at org.elasticsearch.action.support.master.TransportMasterNodeAction.masterOperation(TransportMasterNodeAction.java:109)
        at org.elasticsearch.action.support.master.TransportMasterNodeAction$AsyncSingleAction$2.doRun(TransportMasterNodeAction.java:189)
        at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:37)
        at org.elasticsearch.common.util.concurrent.EsExecutors$1.execute(EsExecutors.java:135)
        at org.elasticsearch.action.support.master.TransportMasterNodeAction$AsyncSingleAction.doStart(TransportMasterNodeAction.java:186)
        at org.elasticsearch.action.support.master.TransportMasterNodeAction$AsyncSingleAction.start(TransportMasterNodeAction.java:142)
        at org.elasticsearch.action.support.master.TransportMasterNodeAction.doExecute(TransportMasterNodeAction.java:120)
        at org.elasticsearch.action.support.master.TransportMasterNodeAction.doExecute(TransportMasterNodeAction.java:56)
        at org.elasticsearch.action.support.TransportAction$RequestFilterChain.proceed(TransportAction.java:143)
        at org.elasticsearch.action.support.TransportAction.execute(TransportAction.java:119)
        at org.elasticsearch.action.support.TransportAction.execute(TransportAction.java:62)
        at org.elasticsearch.client.node.NodeClient.executeLocally(NodeClient.java:83)
        at org.elasticsearch.client.node.NodeClient.doExecute(NodeClient.java:72)
        at org.elasticsearch.client.support.AbstractClient.execute(AbstractClient.java:388)
        at org.elasticsearch.client.support.AbstractClient$IndicesAdmin.execute(AbstractClient.java:1236)
        at org.elasticsearch.client.support.AbstractClient$IndicesAdmin.getIndex(AbstractClient.java:1331)
        at org.elasticsearch.xpack.sql.analysis.index.IndexResolver.resolveWithSameMapping(IndexResolver.java:226)
        at org.elasticsearch.xpack.sql.session.SqlSession.preAnalyze(SqlSession.java:130)
        at org.elasticsearch.xpack.sql.session.SqlSession.analyzedPlan(SqlSession.java:96)
        at org.elasticsearch.xpack.sql.session.SqlSession.optimizedPlan(SqlSession.java:143)
        at org.elasticsearch.xpack.sql.session.SqlSession.physicalPlan(SqlSession.java:147)
        at org.elasticsearch.xpack.sql.session.SqlSession.sqlExecutable(SqlSession.java:156)
        at org.elasticsearch.xpack.sql.session.SqlSession.sql(SqlSession.java:151)
        at org.elasticsearch.xpack.sql.execution.PlanExecutor.sql(PlanExecutor.java:72)
        at org.elasticsearch.xpack.sql.plugin.TransportSqlQueryAction.operation(TransportSqlQueryAction.java:65)
        at org.elasticsearch.xpack.sql.plugin.TransportSqlQueryAction.doExecute(TransportSqlQueryAction.java:52)
        at org.elasticsearch.xpack.sql.plugin.TransportSqlQueryAction.doExecute(TransportSqlQueryAction.java:35)
        at org.elasticsearch.action.support.TransportAction$RequestFilterChain.proceed(TransportAction.java:143)
        at org.elasticsearch.action.support.TransportAction.execute(TransportAction.java:119)
        at org.elasticsearch.action.support.TransportAction.execute(TransportAction.java:62)
        at org.elasticsearch.client.node.NodeClient.executeLocally(NodeClient.java:83)
        at org.elasticsearch.client.node.NodeClient.doExecute(NodeClient.java:72)
        at org.elasticsearch.client.support.AbstractClient.execute(AbstractClient.java:388)
        at org.elasticsearch.xpack.sql.plugin.RestSqlQueryAction.lambda$prepareRequest$0(RestSqlQueryAction.java:84)
        at org.elasticsearch.rest.BaseRestHandler.handleRequest(BaseRestHandler.java:97)
        at org.elasticsearch.rest.RestController.dispatchRequest(RestController.java:239)
        at org.elasticsearch.rest.RestController.tryAllHandlers(RestController.java:336)
        at org.elasticsearch.rest.RestController.dispatchRequest(RestController.java:173)
        at org.elasticsearch.http.AbstractHttpServerTransport.dispatchRequest(AbstractHttpServerTransport.java:323)
        at org.elasticsearch.http.AbstractHttpServerTransport.handleIncomingRequest(AbstractHttpServerTransport.java:373)
        at org.elasticsearch.http.AbstractHttpServerTransport.incomingRequest(AbstractHttpServerTransport.java:302)
        at org.elasticsearch.http.netty4.Netty4HttpRequestHandler.channelRead0(Netty4HttpRequestHandler.java:66)
        at org.elasticsearch.http.netty4.Netty4HttpRequestHandler.channelRead0(Netty4HttpRequestHandler.java:31)
        at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
        at org.elasticsearch.http.netty4.Netty4HttpPipeliningHandler.channelRead(Netty4HttpPipeliningHandler.java:58)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
        at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
        at io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
        at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
        at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
        at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310)
        at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
        at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
        at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
        at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965)
        at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163)
        at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:646)
        at io.netty.channel.nio.NioEventLoop.processSelectedKeysPlain(NioEventLoop.java:546)
        at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:500)
        at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460)
        at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
        at java.base/java.lang.Thread.run(Thread.java:844)
]]
@astefan astefan added >bug :Analytics/SQL SQL querying labels Sep 6, 2018
@elasticmachine
Copy link
Collaborator

Pinging @elastic/es-search-aggs

matriv added a commit to matriv/elasticsearch that referenced this issue Sep 10, 2018
@matriv matriv closed this as completed in f441bb8 Sep 10, 2018
matriv pushed a commit that referenced this issue Sep 10, 2018
Previously, when an arithmetic function got applied on a
table column in the `SELECT` clause, the name of the result
column contained weird characters used internally when
processing the SQL statement e.g.:

  SELECT CHAR(emp_no % 10000) FROM "test_emp"

returned:

  CHAR((emp_no{f}#14) % 10000))

as the column name instead of:

  CHAR((emp_no) % 10000))

Also, fix an issue that causes a ClassCastException to be thrown
when using functions where both arguments are literals.

Closes #31869
Closes #33461
@astefan
Copy link
Contributor Author

astefan commented Sep 12, 2018

@matriv this one still doesn't work if the function with negative parameter is used in GROUP BY:

sql> select power(salary,-1) from test_emp group by power(salary,-1);
Server error [Server sent bad type [folding_exception]. Original type was [line 1:48: Cannot find grouping for 'POWER(salary,-1)']. [FoldingException[line 1:48: Cannot find grouping for 'POWER(salary,-1)']
        at org.elasticsearch.xpack.sql.planner.QueryFolder$FoldAggregate.rule(QueryFolder.java:310)
        at org.elasticsearch.xpack.sql.planner.QueryFolder$FoldAggregate.rule(QueryFolder.java:195)
        at org.elasticsearch.xpack.sql.tree.Node.lambda$transformUp$11(Node.java:188)
        at org.elasticsearch.xpack.sql.tree.Node.transformUp(Node.java:182)
        at org.elasticsearch.xpack.sql.tree.Node.transformUp(Node.java:188)
        at org.elasticsearch.xpack.sql.planner.QueryFolder$FoldingRule.apply(QueryFolder.java:548)
        at org.elasticsearch.xpack.sql.planner.QueryFolder$FoldingRule.apply(QueryFolder.java:544)
        at org.elasticsearch.xpack.sql.rule.RuleExecutor$Transformation.<init>(RuleExecutor.java:82)
        at org.elasticsearch.xpack.sql.rule.RuleExecutor.executeWithInfo(RuleExecutor.java:155)
        at org.elasticsearch.xpack.sql.rule.RuleExecutor.execute(RuleExecutor.java:130)
        at org.elasticsearch.xpack.sql.planner.QueryFolder.fold(QueryFolder.java:81)
        at org.elasticsearch.xpack.sql.planner.Planner.foldPlan(Planner.java:38)
        at org.elasticsearch.xpack.sql.planner.Planner.plan(Planner.java:28)
        at org.elasticsearch.xpack.sql.session.SqlSession.lambda$physicalPlan$4(SqlSession.java:147)
        at org.elasticsearch.action.ActionListener$1.onResponse(ActionListener.java:60)
        at org.elasticsearch.xpack.sql.session.SqlSession.lambda$optimizedPlan$3(SqlSession.java:143)
        at org.elasticsearch.action.ActionListener$1.onResponse(ActionListener.java:60)
        at org.elasticsearch.xpack.sql.session.SqlSession.lambda$preAnalyze$2(SqlSession.java:131)
        at org.elasticsearch.action.ActionListener$1.onResponse(ActionListener.java:60)
        at org.elasticsearch.xpack.sql.analysis.index.IndexResolver.lambda$resolveWithSameMapping$3(IndexResolver.java:248)
        at org.elasticsearch.action.ActionListener$1.onResponse(ActionListener.java:60)
        at org.elasticsearch.action.support.TransportAction$1.onResponse(TransportAction.java:66)
        at org.elasticsearch.action.support.TransportAction$1.onResponse(TransportAction.java:62)
        at org.elasticsearch.action.support.master.TransportMasterNodeAction$AsyncSingleAction$1.onResponse(TransportMasterNodeAction.java:172)
        at org.elasticsearch.action.support.master.TransportMasterNodeAction$AsyncSingleAction$1.onResponse(TransportMasterNodeAction.java:169)
        at org.elasticsearch.action.admin.indices.get.TransportGetIndexAction.doMasterOperation(TransportGetIndexAction.java:142)
        at org.elasticsearch.action.admin.indices.get.TransportGetIndexAction.doMasterOperation(TransportGetIndexAction.java:50)
        at org.elasticsearch.action.support.master.info.TransportClusterInfoAction.masterOperation(TransportClusterInfoAction.java:52)
        at org.elasticsearch.action.support.master.info.TransportClusterInfoAction.masterOperation(TransportClusterInfoAction.java:34)
        at org.elasticsearch.action.support.master.TransportMasterNodeAction.masterOperation(TransportMasterNodeAction.java:109)
        at org.elasticsearch.action.support.master.TransportMasterNodeAction$AsyncSingleAction$2.doRun(TransportMasterNodeAction.java:189)
        at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:37)
        at org.elasticsearch.common.util.concurrent.EsExecutors$1.execute(EsExecutors.java:135)
        at org.elasticsearch.action.support.master.TransportMasterNodeAction$AsyncSingleAction.doStart(TransportMasterNodeAction.java:186)
        at org.elasticsearch.action.support.master.TransportMasterNodeAction$AsyncSingleAction.start(TransportMasterNodeAction.java:142)
        at org.elasticsearch.action.support.master.TransportMasterNodeAction.doExecute(TransportMasterNodeAction.java:120)
        at org.elasticsearch.action.support.master.TransportMasterNodeAction.doExecute(TransportMasterNodeAction.java:56)
        at org.elasticsearch.action.support.TransportAction$RequestFilterChain.proceed(TransportAction.java:143)
        at org.elasticsearch.action.support.TransportAction.execute(TransportAction.java:119)
        at org.elasticsearch.action.support.TransportAction.execute(TransportAction.java:62)
        at org.elasticsearch.client.node.NodeClient.executeLocally(NodeClient.java:83)
        at org.elasticsearch.client.node.NodeClient.doExecute(NodeClient.java:72)
        at org.elasticsearch.client.support.AbstractClient.execute(AbstractClient.java:388)
        at org.elasticsearch.client.support.AbstractClient$IndicesAdmin.execute(AbstractClient.java:1236)
        at org.elasticsearch.client.support.AbstractClient$IndicesAdmin.getIndex(AbstractClient.java:1331)
        at org.elasticsearch.xpack.sql.analysis.index.IndexResolver.resolveWithSameMapping(IndexResolver.java:231)
        at org.elasticsearch.xpack.sql.session.SqlSession.preAnalyze(SqlSession.java:130)
        at org.elasticsearch.xpack.sql.session.SqlSession.analyzedPlan(SqlSession.java:96)
        at org.elasticsearch.xpack.sql.session.SqlSession.optimizedPlan(SqlSession.java:143)
        at org.elasticsearch.xpack.sql.session.SqlSession.physicalPlan(SqlSession.java:147)
        at org.elasticsearch.xpack.sql.session.SqlSession.sqlExecutable(SqlSession.java:156)
        at org.elasticsearch.xpack.sql.session.SqlSession.sql(SqlSession.java:151)
        at org.elasticsearch.xpack.sql.execution.PlanExecutor.sql(PlanExecutor.java:72)
        at org.elasticsearch.xpack.sql.plugin.TransportSqlQueryAction.operation(TransportSqlQueryAction.java:65)
        at org.elasticsearch.xpack.sql.plugin.TransportSqlQueryAction.doExecute(TransportSqlQueryAction.java:52)
        at org.elasticsearch.xpack.sql.plugin.TransportSqlQueryAction.doExecute(TransportSqlQueryAction.java:35)
        at org.elasticsearch.action.support.TransportAction$RequestFilterChain.proceed(TransportAction.java:143)
        at org.elasticsearch.action.support.TransportAction.execute(TransportAction.java:119)
        at org.elasticsearch.action.support.TransportAction.execute(TransportAction.java:62)
        at org.elasticsearch.client.node.NodeClient.executeLocally(NodeClient.java:83)
        at org.elasticsearch.client.node.NodeClient.doExecute(NodeClient.java:72)
        at org.elasticsearch.client.support.AbstractClient.execute(AbstractClient.java:388)
        at org.elasticsearch.xpack.sql.plugin.RestSqlQueryAction.lambda$prepareRequest$0(RestSqlQueryAction.java:84)
        at org.elasticsearch.rest.BaseRestHandler.handleRequest(BaseRestHandler.java:97)
        at org.elasticsearch.rest.RestController.dispatchRequest(RestController.java:239)
        at org.elasticsearch.rest.RestController.tryAllHandlers(RestController.java:336)
        at org.elasticsearch.rest.RestController.dispatchRequest(RestController.java:173)
        at org.elasticsearch.http.AbstractHttpServerTransport.dispatchRequest(AbstractHttpServerTransport.java:323)
        at org.elasticsearch.http.AbstractHttpServerTransport.handleIncomingRequest(AbstractHttpServerTransport.java:373)
        at org.elasticsearch.http.AbstractHttpServerTransport.incomingRequest(AbstractHttpServerTransport.java:302)
        at org.elasticsearch.http.netty4.Netty4HttpRequestHandler.channelRead0(Netty4HttpRequestHandler.java:66)
        at org.elasticsearch.http.netty4.Netty4HttpRequestHandler.channelRead0(Netty4HttpRequestHandler.java:31)
        at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
        at org.elasticsearch.http.netty4.Netty4HttpPipeliningHandler.channelRead(Netty4HttpPipeliningHandler.java:58)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
        at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
        at io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
        at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
        at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
        at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310)
        at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
        at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
        at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
        at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965)
        at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163)
        at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:646)
        at io.netty.channel.nio.NioEventLoop.processSelectedKeysPlain(NioEventLoop.java:546)
        at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:500)
        at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460)
        at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
        at java.base/java.lang.Thread.run(Thread.java:844)

@astefan astefan reopened this Sep 12, 2018
@matriv
Copy link
Contributor

matriv commented Sep 12, 2018

@astefan I think it's better to raise a new issue as this seems irrelevant to the previous.

@matriv
Copy link
Contributor

matriv commented Sep 12, 2018

Actually the new issue you've mentioned is the same as #33361.

@astefan
Copy link
Contributor Author

astefan commented Sep 12, 2018

I'll close this one, then, and we'll follow up in #33361. Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

5 participants