tla-plus/README.md

15 lines
628 B
Markdown
Raw Normal View History

2018-05-09 13:52:09 +08:00
# TLA+ in TiDB
2018-05-09 13:50:54 +08:00
2018-05-09 13:52:09 +08:00
## About TLA+
2018-05-09 13:32:38 +08:00
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.
2018-05-09 13:52:09 +08:00
## Using TLA+ in TiDB
2018-05-09 13:32:38 +08:00
2018-05-09 13:33:19 +08:00
In [TiDB](https://github.com/pingcap/tidb), we use TLA+ for the following purposes:
2018-05-09 13:32:38 +08:00
- To verify the distributed consensus algorithm - [Raft](https://github.com/pingcap/raft-rs).
- To verify the implementation of distributed transaction.
For further information about TLA+, see [tla-plus-resources](https://github.com/cmschmtt/tla-plus-resources).