16.2. Visibility #
Visibility rules for autonomous transactions are the same as for independent transactions executed via dblink
. Autonomous transactions do not see the effects of their parent transaction because the latter has not been committed yet. The parent transaction might see the effects of its autonomous transactions, depending on its own isolation level. For example, if the isolation level is Read Committed, the parent transaction will see all changes made by autonomous transactions. However, if the parent transaction is using the Repeatable Read isolation level, the changes made by autonomous transactions will be invisible.
Autonomous transactions can cause single-session deadlocks, since an autonomous transaction can conflict with one of the paused transactions in its session. If an autonomous transaction tries to obtain any resource locked by its parent, a deadlock is reported.