Transaction does not read dirty data from other transactions.
Transaction does not commit any writes until it completes all its writes
Transactions do not dirty data read by a transaction before the transaction commits.
A transaction does not overwrite data updated by another user or process.