2.9.3 Concurrent execution control of transactions
This subsection explains the processing method used when multiple transactions access the same row concurrently.
- Organization of this subsection
(1) When transactions A and B reference the same row
Transactions A and B are not mutually affected.
(2) When transaction B references a row that has been updated by transaction A
The contents of the row to be referenced by transaction B are determined by the status of transaction A and the transaction isolation level of transaction B. The following table shows the row contents referenced by transaction B.
No. |
Status of transaction A |
Transaction isolation level of transaction B |
|
---|---|---|---|
READ COMMITTED |
REPEATABLE READ |
||
1 |
Being executed |
Row's contents before being updated by transaction A |
Row's contents before being updated by transaction A |
2 |
Already committed |
Row's contents after being updated by transaction A |
(3) When transaction B attempts to update a row that has been updated by transaction A
If transaction B attempts to update a row that has been updated by transaction A which is still executing, transaction B is rolled back.