Failure transparency handles the masking of failures.
When a connection switch is executed by the driver, some of the session context can be lost and the application must reconstruct it. The amount of the preserved state is dictated by the Transparent Failover (TF) level.
Note that, regardless of the TF level, the following situations apply when a failover happens:
▪ The updates of the current transactions are lost (because of the transaction rollback).
▪ NONE: failure transparency is disabled (default).
▪ CONNECTION: no state is preserved, that is, it is unnecessary to reconnect in the case of failover or switchover.
▪ SESSION: most of the session state is preserved. The preservation of the session state is implemented by caching the necessary data in the driver. The higher transparency level is achieved at the expense of the response time of the requests that require caching, as well as increased memory usage in the driver.
– The states of prepared statements are preserved.
– The effects of the following statements are preserved:
SET CATALOG SET SQL INFO SET SQL SORTARRAYSIZE SET SQL CONVERTORSTOUNIONS SET SQL JOINPATHSPAN SET LOCK TIMEOUT SET IDLE TIMEOUT SET OPTIMISTIC LOCK TIMEOUT SET STATEMENT MAXTIME SET ISOLATION LEVEL SET DURABILITY SET SAFENESS SET SCHEMA SET SYNC USER SET SYNC MODE
– The following standard ODBC attributes are preserved:
SQL_ATTR_ACCESS_MODE (SET READ ONLY, SET READ WRITE) SQL_ATTR_CURRENT_CATALOG (duplicates SET CATALOG) SQL_ATTR_AUTOCOMMIT