Disabling Replay

Some application request s are unsuitable for replay. If any application modules are using such designs, then the disable replay API allows disabling of replay on a per request basis. Disabling replay can be added to the callback or to mainline code. Disabling replay requires a callback or change to the request.

Caution:

During replay, autonomous transactions, external PL/SQL calls, and Java callouts are examples of side effects that are separate from the main transaction, and these side effects are replayed unless you specify otherwise. Examples of side effects separate from the main transaction include writing to an external table, sending email, forking sessions out of PL/SQL or Java, transferring files, and accessing external URLs. Actions such as these leave persistent side effects. PL/SQL messaging can leave persistent results behind.

If you configured Application Continuity so that a DBA can end or disconnect a session by using either the ALTER SYSTEM KILL SESSION or ALTER SYSTEM DISCONNECT SESSION statement, then Application Continuity, by default, attempts to recover the session. However, if you do not want the session to be replayed, then use the NOREPLAY keyword, as in the following examples:

alter system kill session 'sid, serial#, @inst' noreplay;
alter system disconnect session 'sid, serial#, @inst' noreplay

See Also: