Skip to Main Content

Oracle Database Discussions

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

TNS Refuse error after Redirect using RAC

383113Feb 3 2010 — edited Feb 10 2010
First off, I'm using the JDBC driver 10.2.0.4.0 with the "10g data store helper" selected in WebSphere against a 10g database configured for RAC.
I don't have the configuration details for the database, but can get them if needed.

WebSphere JDBC string:
jdbc:oracle:thin:@(DESCRIPTION =(ENABLE=BROKEN)(ADDRESS = (PROTOCOL = TCP)(HOST = <FQDN-VIP1>)(PORT = 1521))(ADDRESS = (PROTOCOL = TCP)(HOST = <FQDN-VIP2>)(PORT = 1521))(ADDRESS = (PROTOCOL = TCP)(HOST = <FQDN-VIP3>)(PORT = 1521))(LOAD_BALANCE = YES)(CONNECT_DATA = (SERVER = DEDICATED)(SERVICE_NAME = <SN>)))

Here are the TNS sequence of events for the connection failure:

1) WebSphere makes a TNS Connect request to <FQDN-VIP3> using the data string:
"(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=<FQDN-VIP3>)(PORT=1521))(CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))(SERVER=DEDICATED)(SERVICE_NAME=<SN>)))"
[I can only guess that the driver comes up with this based on the WebSphere string]

2) <FQDN-VIP3> responds with a TNS Redirect:
"(ADDRESS=(PROTOCOL=TCP)(HOST=<HOSTNAME-VIP1>)(PORT=1521))"
[FYI - the redirects respond with a hostname instead of FQDN, but the hostnames are resolvable by our WebSphere server]

3) WebSphere makes a TNS Connect request to <FQDN-VIP1> using the data string provided in the redirect:
"(ADDRESS=(PROTOCOL=TCP)(HOST=<HOSTNAME-VIP1>)(PORT=1521))"

4) <FQDN-VIP1> Refuses the connection with the following error string:
"(DESCRIPTION=(ERR=1153)(VSNNUM=169870336)(ERROR_STACK=(ERROR=(CODE=1153)(EMFI=4)(ARGS='(ADDRESS=(PROTOCOL=TCP)(HOST=<HOSTNAME-VIP1>)(PORT=1521))'))(ERROR=(CODE=305)(EMFI=1))))"

This happens every time we receive a redirect back from the database.
If the JDBC driver is going to use the Redirect connection string verbatim then it seems like the Redirect string should also contain a SID or SERVICE_NAME specification. Or, is the driver supposed to perform this function (rewrite the redirect), but isn't?

Any help in determining what is causing this issue is greatly appreciated.
Thanks.
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Mar 10 2010
Added on Feb 3 2010
2 comments
2,945 views