Chen LT created HIVE-23610:
------------------------------

             Summary: HiveQueryResultSet#next() throw read timeout when using 
hikari for rdbms
                 Key: HIVE-23610
                 URL: https://issues.apache.org/jira/browse/HIVE-23610
             Project: Hive
          Issue Type: Bug
          Components: JDBC
    Affects Versions: 2.1.1
         Environment: Hadoop-2.7.3

Hive-2.1.1

JDK-1.8.0

HikariCP-3.2.0
            Reporter: Chen LT


For example, when using hikari connection pool for mysql, it will set 
DriverManager.loginTimeout to 30 seconds by default, but HiveConection uses 
DriverManager.loginTimeout to create underlying transport 
(TSocket.socketTimeout) , HiveQueryResultSet#next() will throw read timeout 
exception when calling is blocked longer than 30 seconds 
{code:java}
Caused by: org.apache.thrift.transport.TTransportException: 
java.net.SocketTimeoutException: Read timed outCaused by: 
org.apache.thrift.transport.TTransportException: 
java.net.SocketTimeoutException: Read timed out at 
org.apache.thrift.transport.TIOStreamTransport.read(TIOStreamTransport.java:129)
 at org.apache.thrift.transport.TTransport.readAll(TTransport.java:86) at 
org.apache.thrift.transport.TSaslTransport.readLength(TSaslTransport.java:376) 
at 
org.apache.thrift.transport.TSaslTransport.readFrame(TSaslTransport.java:453) 
at org.apache.thrift.transport.TSaslTransport.read(TSaslTransport.java:435) at 
org.apache.thrift.transport.TSaslClientTransport.read(TSaslClientTransport.java:37)
 at org.apache.thrift.transport.TTransport.readAll(TTransport.java:86) at 
org.apache.thrift.protocol.TBinaryProtocol.readAll(TBinaryProtocol.java:429) at 
org.apache.thrift.protocol.TBinaryProtocol.readI32(TBinaryProtocol.java:318) at 
org.apache.thrift.protocol.TBinaryProtocol.readMessageBegin(TBinaryProtocol.java:219)
 at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:77) at 
org.apache.hive.service.rpc.thrift.TCLIService$Client.recv_FetchResults(TCLIService.java:559)
 at 
org.apache.hive.service.rpc.thrift.TCLIService$Client.FetchResults(TCLIService.java:546)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 at java.lang.reflect.Method.invoke(Method.java:498) at 
org.apache.hive.jdbc.HiveConnection$SynchronizedHandler.invoke(HiveConnection.java:1412)
 at com.sun.proxy.$Proxy125.FetchResults(Unknown Source) at 
org.apache.hive.jdbc.HiveQueryResultSet.next(HiveQueryResultSet.java:372)
...{code}
 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to