Connection timeout problem Driver version 13.10

Connectivity

Connection timeout problem Driver version 13.10

Hi 

We are seeeing connection timeout problems via teradata java driver v13.10. We tried to set the connection keep alive from the connection pool manager, still no luck. we still the socket failure excrption. Any pointers what could be done to get around this issue? Any solution ASAP would really help.

ERROR org.hib

ernate.util.JDBCExceptionReporter [Teradata JDBC Driver] [TeraJDBC 13.10.00.31] [Error 804] [SQLState 08S01] Socket communication failure for

Packet receive Thu Aug 08 19:15:46 UTC 2013 socket orig=dzdtddsl local=0.0.0.0/0.0.0.0:47957 remote=dzdtddslcop1/10.197.220.13:1025 keepalive=

unavailable nodelay=unavailable receive=unavailable send=unavailable linger=unavailable traffic=unavailable concurrent=3 contimeout=10000 conw

ait=1000 connecttime=4 connecttotaltime=22 connectattempts=1 connectfailures=0 failurecache={} cid=7c20170b sess=1043725 java.io.IOException:

Incomplete LAN message header: read 0 bytes  at com.teradata.jdbc.jdbc_4.io.TDNetworkIOIF.read(TDNetworkIOIF.java:673)  at com.teradata.jdbc.j

dbc_4.io.TDPacketStream.readStream(TDPacketStream.java:818)  at com.teradata.jdbc.jdbc_4.statemachine.StatementReceiveState.action(StatementRe

ceiveState.java:128)  at com.teradata.jdbc.jdbc_4.statemachine.StatementController.runBody(StatementController.java:120)  at com.teradata.jdbc

.jdbc_4.statemachine.StatementController.run(StatementController.java:111)  at com.teradata.jdbc.jdbc_4.TDStatement.executeStatement(TDStateme

nt.java:372)  at com.teradata.jdbc.jdbc_4.TDStatement.prepareRequest(TDStatement.java:541)  at com.teradata.jdbc.jdbc_4.TDPreparedStatement.<i

nit>(TDPreparedStatement.java:96)  at com.teradata.jdbc.jdk6.JDK6_SQL_PreparedStatement.<init>(JDK6_SQL_PreparedStatement.java:21)  at com.ter

adata.jdbc.jdk6.JDK6_SQL_Connection.constructPreparedStatement(JDK6_SQL_Connection.java:76)  at com.teradata.jdbc.jdbc_4.TDSession.prepareStat

ement(TDSession.java:1505)  at com.teradata.jdbc.jdbc_4.TDSession.prepareStatement(TDSession.java:1482)  at sun.reflect.GeneratedMethodAccesso

r896.invoke(Unknown Source)  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)  at java.lang.reflect.Me

thod.invoke(Method.java:597)  at msjava.dbpool.connectionwrapper.internal.JdbcProxyingUtils$SQLExceptionHandlingInvocationHandler.invoke(JdbcP

roxyingUtils.java:221)  at $Proxy27.prepareStatement(Unknown Source)  at msjava.dbpool.connectionwrapper.internal.DelegatingConnection.prepare

Statement(DelegatingConnection.java:494)
2 REPLIES
Teradata Employee

Re: Connection timeout problem Driver version 13.10

According to the stack trace you posted, you are using Teradata JDBC Driver 13.10.00.31.

You should upgrade to a newer version of the Teradata JDBC Driver; for example, Teradata JDBC Driver 13.10.00.35, that includes the fix for JDBC DR 155367 "Intermittent socket communication failures when using setQueryTimeout with large result sets"

Assuming that you obtain that fix, if you continue to receive Error 804, please be aware that Error 804 can occur for different reasons. The exception error message is important for distinguishing the different error conditions.

Typically, Error 804 with the error message "Socket communication failure for Packet receive" means that a network communication failure occurred. This can be due to a variety of reasons, such as:

1. Network problem

2. Teradata Database restart

3. Teradata session was aborted by Teradata Manager, Teradata Viewpoint, or some other administrator process that aborts idle sessions

Re: Connection timeout problem Driver version 13.10

Will upgrade the driver and see if the exception goes  away [apart from validating that the conns are not getting killed]

Thanks Tom!!