• RW, WW, WW conflicts yield ordering constraints.

  • Serializability requires consistency among these constraints -- no cycles.

  • A lock held to the end of the transaction says:
    • I (T1) depend on this value.
    • You (T2) can have it once I'm done.
    • T1 < T2.
    • Lock on X held by T1 means T1 < any transaction that wants X also.