I have read some code on transaction part.
When the new
transaction starts, it record the snapshot of database containing the current
transaction id,etc. So depending on the snapshot
, the transaction decide
which tuple is visible.
But transaction could also be implemented by lock. so
I am not sure how
the transaction is implemented, by MVCC or Lock, or by
In my option, when tuple is processed in readonly mode(select), MVCC is
enough. but when tuple is changed, lock is used. I am not sure whether the
explanation is correct.
Thanks for any comments.