1. TiKV Development Guide
  2. 1. Get Started
    1. 1.1. Build TiKV from Source
    2. 1.2. Import TiKV into an IDE
    3. 1.3. Write and Run Unit Tests
    4. 1.4. Debug and Profile
    5. 1.5. Submit a Pull Request
  3. 2. Contribute to TiKV
    1. 2.1. Community Guideline
    2. 2.2. Committer Guide
    3. 2.3. Report a Bug
    4. 2.4. Contribute code
    5. 2.5. Review a Pull Request
    6. 2.6. Request for Comments
    7. 2.7. Code Style and Quality Guide
    8. 2.8. Write document
  4. 3. Understanding TiKV
    1. 3.1. Overview
      1. 3.1.1. Raw KV
      2. 3.1.2. Transaction KV
    2. 3.2. Scalability
      1. 3.2.1. Region
      2. 3.2.2. Scheduling
    3. 3.3. High Availability
      1. 3.3.1. Raft
        1. 3.3.1.1. raft-rs
        2. 3.3.1.2. Leader Lease
        3. 3.3.1.3. Hibernate Region
      2. 3.3.2. Multi-Raft
        1. 3.3.2.1. Split
        2. 3.3.2.2. Merge
      3. 3.3.3. RaftStore
        1. 3.3.3.1. Actor Model
        2. 3.3.3.2. FSM
    4. 3.4. Transaction
      1. 3.4.1. Percolator
        1. 3.4.1.1. TSO
        2. 3.4.1.2. Encode
        3. 3.4.1.3. Command
        4. 3.4.1.4. Latch and Scheduler
      2. 3.4.2. Pessimistic Transaction
      3. 3.4.3. Async Commit
      4. 3.4.4. 1PC
      5. 3.4.5. Stale Read
      6. 3.4.6. CDC
    5. 3.5. Storage
      1. 3.5.1. RocksDB
      2. 3.5.2. Encode
      3. 3.5.3. Import and Export
      4. 3.5.4. IO Rate Limiter
    6. 3.6. Coprocessor
      1. 3.6.1. TiDB Expression Executor
      2. 3.6.2. Coprocessor Plugin

TiKV Development Guide

Committer Guide