1. Transaction: …
2. Transaction in Loop
We prefer "Transaction after Loop" to "Transaction in Loop".
a. "Transaction in Loop" => Too many seperated transactions => Not Atomic
b. "Transaction in Loop" commits frequently => Undo Log more easily erased, since transaction already commited => When "restart" happens, you may see "Snap Too old".
3.
Be generous with the size of undo space, otherwise a long transaction may fail.
4.
Autonomous Transaction — When it commits/rollback, the parent session doesn’t commit/back; When the parent session commits/rollbacks, its embedded Autonomous Transaction doesn’t commit/back