Error "IO Exception : End of TNS data channel" When Connecting with Multiple ADDRESS_LIST.

(Doc ID 750796.1)

Last updated on MAY 19, 2017

Applies to:

JDBC - Version 10.2.0.3 and later
Information in this document applies to any platform.
***Checked for relevance on 30-Jan-2014***

Symptoms

When connecting using a JDBC/thin 10.2.0.3 driver using the following URL:

String thinConn = "jdbc:oracle:thin:@( DESCRIPTION = ( ADDRESS_LIST = (ADDRESS = (PROTOCOL=TCP)(HOST=host1)(PORT=1521) )
                                                                      (ADDRESS = (PROTOCOL=TCP)(HOST=host2)(PORT=1521) )
                                                                      (LOAD_BALANCE=true)(FAILOVER=true)
                                                     )
                                                     ( ADDRESS_LIST = (ADDRESS = (PROTOCOL=TCP)(HOST=host3)(PORT=1521) )
                                                                      (ADDRESS = (PROTOCOL=TCP)(HOST=host4)(PORT=1521) )
                                                                      (LOAD_BALANCE=true)(FAILOVER=true)
                                                     )
                                       (CONNECT_DATA=(SERVICE_NAME=orcl)(SERVER=DEDICATED)))\n";


you get the following error:
Error : IO Exception : End of TNS data channel

The same connection works fine with JDBC 10.2.0.4

Changes

Using multiple ADDRESS_LIST clauses is useful in a DataGuard environment, when both the primary and secondary databases are RAC.

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms