Make requests on meta region more available
- Dominant language
- Go
- Stars
- 40.5k
- Forks
- 6.2k
- PR merge metrics
- PR metrics pending
Description
## Enhancement
Meta region is the most important region for TiDB, if encountered problems when getting data from it, TiDB will not be able to provide services (see https://github.com/pingcap/tidb/issues/47377). It is best to add some mechanisms to ensure that when it encounters problems, it can be quickly and automatically resolved.
1. Detect problems and read through follower read. It looks like https://docs.pingcap.com/tidb/stable/system-variables#tidb_load_based_replica_read_threshold-new-in-v700, maybe we can keep it open for the meta region.
2. Send read requests to both the leader and follower simultaneously, and return as soon as one of them acknowledges, in order to improve availability.
3. Quickly detect lagging and transfer leader, or set its raft tick to a smaller value.
Contributor guide
Assessment
This issue has not been assessed yet.