•Assign unique timestamp to a transaction when itbegins
•Each object has a read and write timestampassociated with it
–which committed transaction last read the object
–which committed transaction last wrote the object
•Good ordering:
–object’s read and write timestamps will be older than currenttransaction if it wants to write an object
–object’s write timestamps will be older than currenttransaction if it wants to read an object
•Abort and restart transaction for improper ordering