Ensure your Application Servers are using proper failover in TNSNAMES.ORA files
First off with Oracle 10g RAC, clients should be using the Virtual IP (VIP) as the connection target for failover purposes. Ensure you are NOT using the public IP.
Additionally a Transparent Application Failover (TAF) entry must be present in the TNSNAMES.ORA.
Use the following example TNSNAMES.ORA entry to ensure your TAF entry is setup properly:
PROD =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST =
vip1.oraclegiants.local)(PORT =
1521))
(ADDRESS = (PROTOCOL =
TCP)(HOST =
vip2.oraclegiants.local)(PORT =
1521))
(ADDRESS = (PROTOCOL =
TCP)(HOST =
vip3.oraclegiants.local)(PORT =
1521))
(LOAD_BALANCE = yes)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = PROD)
)
)