[ https://issues.apache.org/jira/browse/DRILL-3833?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sudheesh Katkam resolved DRILL-3833. ------------------------------------ Resolution: Fixed Fix Version/s: (was: Future) 1.7.0 Fixed in [e4725ea|https://github.com/apache/drill/commit/e4725ea53dce58499974be93b3da87388e7df51c] through DRILL-3714. > Concurrent Queries Failed Unexpectedly > -------------------------------------- > > Key: DRILL-3833 > URL: https://issues.apache.org/jira/browse/DRILL-3833 > Project: Apache Drill > Issue Type: Bug > Components: Client - JDBC, Execution - RPC > Affects Versions: 1.1.0, 1.2.0 > Environment: CentOS release 6.6 (Final) > Hadoop-2.7.1 > Drill-1.1.0 > Single drillbit on single zookeeper > Reporter: Yiyi Hu > Labels: hdfs, jdbc, rpc > Fix For: 1.7.0 > > Attachments: drillbit.log > > > Concurrent queries with a relatively large LIMIT size *failed*, where the > failure occurred randomly. > To reproduce: > - Test data: a JSON file test.json (at least 10,000,000 records, two fields > id<int>, title<string>); > - Submit 5 queries with 5 separate threads using jdbc, where the query is: > {panel} > SELECT id, title FROM dfs.`test.json` LIMIT 10000000; > {panel} > - The error message in drillbit.log: > {noformat} > 2015-09-24 19:15:15,393 [Client-1] INFO > o.a.d.j.i.DrillResultSetImpl$ResultsListener - [#4] Query failed: > org.apache.drill.common.exceptions.UserRemoteException: SYSTEM ERROR: > ChannelClosedException: Channel closed /192.168.4.201:31010 <--> > /192.168.4.201:58795. > Fragment 0:0 > [Error Id: 60a7baa8-a2ed-47e6-b7ca-68afd82c852a on TEST-101:31010] > at > org.apache.drill.exec.rpc.user.QueryResultHandler.resultArrived(QueryResultHandler.java:118) > [drill-java-exec-1.1.0.jar:1.1.0] > at > org.apache.drill.exec.rpc.user.UserClient.handleReponse(UserClient.java:111) > [drill-java-exec-1.1.0.jar:1.1.0] > at > org.apache.drill.exec.rpc.BasicClientWithConnection.handle(BasicClientWithConnection.java:47) > [drill-java-exec-1.1.0.jar:1.1.0] > at > org.apache.drill.exec.rpc.BasicClientWithConnection.handle(BasicClientWithConnection.java:32) > [drill-java-exec-1.1.0.jar:1.1.0] > at org.apache.drill.exec.rpc.RpcBus.handle(RpcBus.java:61) > [drill-java-exec-1.1.0.jar:1.1.0] > at > org.apache.drill.exec.rpc.RpcBus$InboundHandler.decode(RpcBus.java:233) > [drill-java-exec-1.1.0.jar:1.1.0] > at > org.apache.drill.exec.rpc.RpcBus$InboundHandler.decode(RpcBus.java:205) > [drill-java-exec-1.1.0.jar:1.1.0] > at > io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:89) > [netty-codec-4.0.27.Final.jar:4.0.27.Final] > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:339) > [netty-transport-4.0.27.Final.jar:4.0.27.Final] > at > io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:324) > [netty-transport-4.0.27.Final.jar:4.0.27.Final] > at > io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:254) > [netty-handler-4.0.27.Final.jar:4.0.27.Final] > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:339) > [netty-transport-4.0.27.Final.jar:4.0.27.Final] > at > io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:324) > [netty-transport-4.0.27.Final.jar:4.0.27.Final] > at > io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) > [netty-codec-4.0.27.Final.jar:4.0.27.Final] > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:339) > [netty-transport-4.0.27.Final.jar:4.0.27.Final] > at > io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:324) > [netty-transport-4.0.27.Final.jar:4.0.27.Final] > at > io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:242) > [netty-codec-4.0.27.Final.jar:4.0.27.Final] > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:339) > [netty-transport-4.0.27.Final.jar:4.0.27.Final] > at > io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:324) > [netty-transport-4.0.27.Final.jar:4.0.27.Final] > at > io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86) > [netty-transport-4.0.27.Final.jar:4.0.27.Final] > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:339) > [netty-transport-4.0.27.Final.jar:4.0.27.Final] > at > io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:324) > [netty-transport-4.0.27.Final.jar:4.0.27.Final] > at > io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:847) > [netty-transport-4.0.27.Final.jar:4.0.27.Final] > at > io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:131) > [netty-transport-4.0.27.Final.jar:4.0.27.Final] > at > io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:511) > [netty-transport-4.0.27.Final.jar:4.0.27.Final] > at > io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:468) > [netty-transport-4.0.27.Final.jar:4.0.27.Final] > at > io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:382) > [netty-transport-4.0.27.Final.jar:4.0.27.Final] > at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:354) > [netty-transport-4.0.27.Final.jar:4.0.27.Final] > at > io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:111) > [netty-common-4.0.27.Final.jar:4.0.27.Final] > at java.lang.Thread.run(Thread.java:745) [na:1.8.0_45] > {noformat} > - Related to DRILL-3763. But the differences are, the queries were submitted > through jdbc directly, and there was no external interruption in this case. -- This message was sent by Atlassian JIRA (v6.3.4#6332)