[
https://issues.apache.org/jira/browse/DRILL-3021?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14587087#comment-14587087
]
Daniel Barclay (Drill) commented on DRILL-3021:
-----------------------------------------------
If running many concurrent queries causes our RPC heartbeat check either to not
send a heartbeat on time or to not process a received heartbeat in time,
doesn't that mean something's wrong with our RPC heartbeat mechanism (maybe
that it doesn't get enough priority to send and check liveness messages often
enough)?
By the way, we should be careful with saying "query timeout." That terminology
sounds like a timeout on executing a query (e.g., time from issuing query to
starting to receive results), which we don't implement (right?), rather than a
timeout on liveness pings.
> Exception in a JDBC session causes the client connection to be closed
> ---------------------------------------------------------------------
>
> Key: DRILL-3021
> URL: https://issues.apache.org/jira/browse/DRILL-3021
> Project: Apache Drill
> Issue Type: Bug
> Components: Client - JDBC
> Affects Versions: 1.0.0
> Environment: RHEL 6.4
> Reporter: Kunal Khatua
> Assignee: Daniel Barclay (Drill)
> Fix For: 1.1.0
>
>
> When running a lot of queries in a session (one connection), if an exception
> is encountered or if the client cancels the query (due to its internal
> timeout), the following exception is thrown for subsequent queries being
> submitted.
> Error: CONNECTION ERROR: Connection null <--> null (user client) closed
> unexpectedly.
> 2015-05-10 18:21:33 [pip2] ERROR PipSQuawkling executeQuery - [ 6 / 10_par100
> ] CONNECTION ERROR: Connection null <--> null (user client) closed
> unexpectedly.
> [Error Id: a57768ad-a6ab-4f83-a1c9-381d127600b3 ]
> java.sql.SQLException: CONNECTION ERROR: Connection null <--> null (user
> client) closed unexpectedly.
> [Error Id: a57768ad-a6ab-4f83-a1c9-381d127600b3 ]
> at org.apache.drill.jdbc.DrillCursor.next(DrillCursor.java:161)
> at
> org.apache.drill.jdbc.impl.DrillResultSetImpl.execute(DrillResultSetImpl.java:167)
> at
> org.apache.drill.jdbc.impl.DrillResultSetImpl.execute(DrillResultSetImpl.java:56)
> at
> net.hydromatic.avatica.AvaticaConnection.executeQueryInternal(AvaticaConnection.java:404)
> at
> net.hydromatic.avatica.AvaticaStatement.executeQueryInternal(AvaticaStatement.java:351)
> at
> net.hydromatic.avatica.AvaticaStatement.executeQuery(AvaticaStatement.java:78)
> at
> org.apache.drill.jdbc.DrillStatement.executeQuery(DrillStatement.java:81)
> at PipSQuawkling.executeQuery(PipSQuawkling.java:295)
> at PipSQuawkling.executeTest(PipSQuawkling.java:148)
> at PipSQuawkling.run(PipSQuawkling.java:76)
> Caused by: org.apache.drill.common.exceptions.UserException: CONNECTION
> ERROR: Connection null <--> null (user client) closed unexpectedly.
> [Error Id: a57768ad-a6ab-4f83-a1c9-381d127600b3 ]
> at
> org.apache.drill.common.exceptions.UserException$Builder.build(UserException.java:495)
> at
> org.apache.drill.exec.rpc.user.QueryResultHandler$SubmissionListener$ChannelClosedListener.operationComplete(QueryResultHandler.java:298)
> at
> io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:680)
> at
> io.netty.util.concurrent.DefaultPromise$LateListeners.run(DefaultPromise.java:845)
> at
> io.netty.util.concurrent.DefaultPromise$LateListenerNotifier.run(DefaultPromise.java:873)
> at
> io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:357)
> at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:357)
> at
> io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:111)
> at java.lang.Thread.run(Thread.java:744)
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)