···6363When reads are performed, the keys or key ranges read are tracked interally as read conflicts.
6464If and when the transaction is committed, these read conflicts will be used to perform concurrency control.
65656666-## Performing writes
6666+### Performing writes
67676868Writes are simply buffered internally such that they can be sent when the transaction is committed.
6969···7272but in some cases advanced clients may choose to manipulate the write conflicts independently to improve performance or selectively weaken consistency guarantees.
7373However, such manipulation is dangerous and not generally recommended.
74747575-## Committing
7575+### Committing
76767777To commit a transaction, the client gathers up the read version, read conflicts, write conflicts, and writes and sends them to a `CommitBuffer`.
7878···101101Once *every* TLog has returned,
102102the `CommitBuffer` accordingly returns to all of the clients in the batch.
103103104104-## Storage peeks logs
104104+### Storage peek
105105106106Outside of the commit path,
107107`Storage` servers "peek" logs for their team by sending peek requests to their corresponding `TLog` servers.