Transparent Application Failover TAF in Oracle RAC
Transparent Application Failover TAF is an automatic database session re-establishment or reconnection characteristic built into Oracle Call Interface (OCI) in Oracle Network. It is principally aimed for Real Application Cluster RAC environments to re-establish database sessions in case of cluster node failure or instance breakdown, but the utility as such is completely self-determining of RAC and may be used for single instance as well as Data Guard environments. TAF does not work with the JDBC Thin driver/client, since that driver is not for on top of OCI.
Following is a sample configuration of a Net service name configured with Transparent Application Failover:
(ADDRESS LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = racserver1)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = racserver2)(PORT = 1521))
(CONNECT DATA =
(SERVICE NAME = RAC. oracpro.com)
(FAILOVER MODE =
(TYPE = select)
(METHOD = basic)
(RETRIES = 15)
(DELAY = 8)
The former Net service name definition instructs Oracle Net to do the following:
If you want to deploy session failover (or somewhat re-connection to a current instance). As long as FAILOVER MODE is present, it is not essential to unambiguously request reconnection by adding (FAILOVER=ON) to the DESCRIPTION section.
Attempt to robotically and evidently re-execution SELECT statements that were in progress at the time the database connection was interrupted.
Wait eight seconds before each attempt to reconnect (DELAY).
Retry connection re-establishment at most 15 times, such that a connection must be re-connected within three minutes. After expiration of the reconnection interval (DELAY times RETRIES), Oracle Net indicates the error “ORA-03113: end-of-file on communication channel” to the client, if the motive of the disconnection was a node or instance failure/break-down. If the session was disconnected and the reconnection interval expires, the error “ORA-00028: your session has been killed” is reported. If a session efforts to run SQL statements after one of these errors, it acquires the error “ORA-03114: not connected to ORACLE”. At this point, it might attempt to start a new database session without the assistance of TAF.
In a RAC environment, one would typically add the parameter (LOAD BALANCE=ON) to the DESCRIPTION section. Even lacking this parameter, sessions are distributed across available RAC instances.
For maintaining Oracle RAC databases smoothly, high expertise is needed, off course remote dba can be able to handle these all critical situations and provides smooth and trouble-free database/application operations with solid database support and maintain response time matrix.