Go to file
Yilin Chen be9ddc9e7a
add comments to the spec
Signed-off-by: Yilin Chen <sticnarf@gmail.com>
2019-10-23 20:52:20 +08:00
CollapseRollbacks move collapserollback optimization to a new separate directory (#24) 2018-08-22 11:33:57 -07:00
ConcurrentPercolator move collapserollback optimization to a new separate directory (#24) 2018-08-22 11:33:57 -07:00
OptimizedCommitTS optimized commit ts: remove the cost of getting commitTS (#20) 2018-05-14 17:55:33 +08:00
Percolator percolator: allow clients having different primary keys. (#16) 2018-04-02 14:04:53 +08:00
PessimisticTransaction add comments to the spec 2019-10-23 20:52:20 +08:00
Raft Port raft from ongardie/raft.tla as-is. (#3) 2018-02-01 15:20:23 +08:00
RaftMerge RaftMerge: rollback and TLC models. (#11) 2018-03-22 14:56:07 +08:00
TwoPC Fix silly error in Coq proof. 2018-01-21 20:45:05 +08:00
.gitignore percolator: allow clients having different primary keys. (#16) 2018-04-02 14:04:53 +08:00
LICENSE Initial commit 2017-12-19 19:12:25 +08:00
README.md Update README.md 2018-05-08 22:52:09 -07:00

TLA+ in TiDB

About TLA+

TLA+ is a formal specification and verification language to help engineers design, specify, reason about, and verify complex software and hardware systems. It is widely used to verify the algorithms in distributed systems.

Using TLA+ in TiDB

In TiDB, we use TLA+ for the following purposes:

  • To verify the distributed consensus algorithm - Raft.
  • To verify the implementation of distributed transaction.

For further information about TLA+, see tla-plus-resources.