kvproto

Protocol buffer files for TiKV

Usage

Dependencies

Proto formatting

To avoid IDE-induced diffs, we use buf format to keep all .proto files consistently formatted.

The formatter is pinned and will be downloaded automatically into ./bin (gitignored) when needed. If make check fails on formatting, run make proto-fmt and then rerun make check.

Docker image

The easiest way to compile the protobufs is to use docker.

./scripts/docker-build.sh  # build the docker image once
./scripts/docker-run.sh make go

Build locally

There are many dependencies to be installed, please refer to the relevant scripts in workflow to set them up.

BackupMeta Compatibility

If you change backup metadata wire schema in proto/brpb.proto (for backup.BackupMeta or messages reachable from it), increment BackupSchemaVersion in pkg/brpb/backup_schema_version.go.