Parameter for no of connections or sessions to Teradata

Connectivity

Parameter for no of connections or sessions to Teradata

2015-06-23 15:00:37,075 [Thread-11] ERROR com.XXX.dataconnector.ClientThread  - Unable to load connector and populate data: Unable to read data source; [Teradata JDBC Driver] [TeraJDBC 14.10.00.17] [Error 1000] [SQLState 08S01] Login failure for Packet receive Tue Jun 23 15:00:37 CDT 2015 socket orig=eiwu.XXX.com local=0.0.0.0/0.0.0.0:59166 remote=eiwucop8.XXX.com/159.37.103.120:1025 keepalive=unavailable nodelay=unavailable receive=unavailable send=unavailable linger=unavailable traffic=unavailable concurrent=3 contimeout=10000 conwait=1000 connecttime=65 connecttotaltime=65 connectattempts=1 connectfailures=0 failurecache={} cid=55830d39 sess=21349985 java.io.IOException: Incomplete LAN message header: read 0 bytes  at com.teradata.jdbc.jdbc_4.io.TDNetworkIOIF.read(TDNetworkIOIF.java:689)  at com.teradata.jdbc.jdbc_4.io.TDPacketStream.readStream(TDPacketStream.java:838)  at com.teradata.jdbc.jdbc.GenericLogonController.run(GenericLogonController.java:498)  at com.teradata.jdbc.jdbc_4.TDSession.<init>(TDSession.java:216)  at com.teradata.jdbc.jdk6.JDK6_SQL_Connection.<init>(JDK6_SQL_Connection.java:35)  at com.teradata.jdbc.jdk6.JDK6ConnectionFactory.constructSQLConnection(JDK6ConnectionFactory.java:25)  at com.teradata.jdbc.jdbc.ConnectionFactory.createConnection(ConnectionFactory.java:179)  at com.teradata.jdbc.jdbc.ConnectionFactory.createConnection(ConnectionFactory.java:169)  at com.teradata.jdbc.TeraDriver.doConnect(TeraDriver.java:232)  at com.teradata.jdbc.TeraDriver.connect(TeraDriver.java:158)  at java.sql.DriverManager.getConnection(DriverManager.java:579)  at java.sql.DriverManager.getConnection(DriverManager.java:221)  at com.XXX.dataconnector.plugin.DatabaseCachePlugin.getConnection(DatabaseCachePlugin.java:32)  at com.XXX.dataconnector.plugin.DatabaseCachePlugin.getRecords(DatabaseCachePlugin.java:86)  at com.XXX.dataconnector.plugin.DatabaseCachePlugin.getBatchRecords(DatabaseCachePlugin.java:48)  at com.XXX.dataconnector.ClientThread.run(ClientThread.java:57) com.XXX.dataconnector.DataIndexException: Unable to read data source; [Teradata JDBC Driver] [TeraJDBC 14.10.00.17] [Error 1000] [SQLState 08S01] Login failure for Packet receive Tue Jun 23 15:00:37 CDT 2015 socket orig=eiwu.XXX.com local=0.0.0.0/0.0.0.0:59166 remote=eiwucop8.XXX.com/159.37.103.120:1025 keepalive=unavailable nodelay=unavailable receive=unavailable send=unavailable linger=unavailable traffic=unavailable concurrent=3 contimeout=10000 conwait=1000 connecttime=65 connecttotaltime=65 connectattempts=1 connectfailures=0 failurecache={} cid=55830d39 sess=21349985 java.io.IOException: Incomplete LAN message header: read 0 bytes  at com.teradata.jdbc.jdbc_4.io.TDNetworkIOIF.read(TDNetworkIOIF.java:689)  at com.teradata.jdbc.jdbc_4.io.TDPacketStream.readStream(TDPacketStream.java:838)  at com.teradata.jdbc.jdbc.GenericLogonController.run(GenericLogonController.java:498)  at com.teradata.jdbc.jdbc_4.TDSession.<init>(TDSession.java:216)  at com.teradata.jdbc.jdk6.JDK6_SQL_Connection.<init>(JDK6_SQL_Connection.java:35)  at com.teradata.jdbc.jdk6.JDK6ConnectionFactory.constructSQLConnection(JDK6ConnectionFactory.java:25)  at com.teradata.jdbc.jdbc.ConnectionFactory.createConnection(ConnectionFactory.java:179)  at com.teradata.jdbc.jdbc.ConnectionFactory.createConnection(ConnectionFactory.java:169)  at com.teradata.jdbc.TeraDriver.doConnect(TeraDriver.java:232)  at com.teradata.jdbc.TeraDriver.connect(TeraDriver.java:158)  at java.sql.DriverManager.getConnection(DriverManager.java:579)  at java.sql.DriverManager.getConnection(DriverManager.java:221)  at com.XXX.dataconnector.plugin.DatabaseCachePlugin.getConnection(DatabaseCachePlugin.java:32)  at com.XXX.dataconnector.plugin.DatabaseCachePlugin.getRecords(DatabaseCachePlugin.java:86)  at com.XXX.dataconnector.plugin.DatabaseCachePlugin.getBatchRecords(DatabaseCachePlugin.java:48)  at com.XXX.dataconnector.ClientThread.run(ClientThread.java:57)
        at com.XXX.dataconnector.plugin.DatabaseCachePlugin.getRecords(DatabaseCachePlugin.java:165)
        at com.XXX.dataconnector.plugin.DatabaseCachePlugin.getBatchRecords(DatabaseCachePlugin.java:48)
        at com.XXX.dataconnector.ClientThread.run(ClientThread.java:57)

Hi ,

We have an application trying to connect to Teradat using JDBC driver  to unload data. However, it seems that they get the above error . They have 2 parameters that they pass - MAxstages (set to 6) and Batchrepeat (set to 60). They start with setting maxstages to 10 but get the following error for 3 threads out of 10. So they think that Teradata is allowing only 7 sessions maximum, however I do not see the session count parameter being passed in config script. So what is the parameter that can be set to limit the number of connections to teradata?  Is maxstages parameter different from the sessions count parameter?

Any inputs appreciated.

1 REPLY
Teradata Employee

Re: Parameter for no of connections or sessions to Teradata

If this application is running on Linux, then it may be encountering the "Slow Logon on Linux" problem, as documented in the Teradata JDBC Driver User Guide.

http://developer.teradata.com/doc/connectivity/jdbc/reference/current/jdbcug_chapter_5.html#CHDDACIH

The recommended solution is to upgrade to Teradata JDBC Driver 15.00.00.13 or later; preferably upgrade to the latest Teradata JDBC Driver version available for download here on Developer Exchange.

http://downloads.teradata.com/download/connectivity/jdbc-driver