Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
1.4.6
-
None
-
HDP 2.4.0.0-169
Description
Oracle direct connector is unable to get the port from a TNSNAMES-like connection string like this
jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(LOAD_BALANCE=ON)(ADDRESS=(PROTOCOL=TCP)(HOST=HOST01)(PORT=1530))(ADDRESS=(PROTOCOL=TCP)(HOST=HOST02)(PORT=1530)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=SERVICE)(FAILOVER_MODE=(TYPE=SELECT)(METHOD=BASIC)(RETRIES=180)(DELAY=5))))
spitting the following error
16/07/14 17:34:05 INFO oracle.OraOopManagerFactory: This Oracle database is a RAC.
...
16/07/14 17:34:06 WARN oracle.OraOopManagerFactory: The dynamically generated JDBC URL "jdbc:oracle:thin:@HOST01:0:SERVICE1" was unable to connect to an instance in the Oracle RAC.
java.sql.SQLRecoverableException: Error de E/S: The Network Adapter could not establish the connection
..
16/07/14 17:34:06 INFO oracle.OraOopManagerFactory: Data Connector for Oracle and Hadoop will not attempt to load-balance sessions across instances of an Oracle RAC - as multiple JDBC URLs to the Oracle RAC could not be dynamically generated.
It seems it's unable to extract the port from my TNSNAMES-like connection string and ends up using 0 as default value instead of the correct value.