This figure illustrates the main actions of application continuity when it restarts and recovers an application. In the figure, a client application makes a request that is passed to a middle tier connection pool (such as the Universal Connection Pool (UCP), ODP.NET, WebLogic Server, OCI session pool, Tuxedo, JDBC and OCI drivers, or a third-party connection pool using UCP) or directly to the database. A planned or unplanned event or recoverable error occurs, which results in a potential interruption. Fast Application Notification or Fast Connection Failover terminates the session and Application Continuity begins to replay the session.
Application Continuity replaces the dead session with a new session and prepares to replay the transaction by using Transaction Guard to determine the outcome of the in-flight transaction, if one was open. The FAILOVER_RESTORE configuration parameter restores the initial session state and Application Continuity rebuilds the database session, recovering the transactional and non-transactional states before ending the replay and returning to run-time mode, submitting the last queued call.