ikv.tikv-client.2.1-spark_2.4.source-code.kvrpcpb.proto Maven / Gradle / Ivy
syntax = "proto3";
package kvrpcpb;
import "metapb.proto";
import "errorpb.proto";
import "gogoproto/gogo.proto";
import "rustproto.proto";
option (gogoproto.marshaler_all) = true;
option (gogoproto.sizer_all) = true;
option (gogoproto.unmarshaler_all) = true;
option (rustproto.lite_runtime_all) = true;
option java_package = "org.tikv.kvproto";
message LockInfo {
bytes primary_lock = 1;
uint64 lock_version = 2;
bytes key = 3;
uint64 lock_ttl = 4;
}
message AlreadyExist {
bytes key = 1;
}
message KeyError {
LockInfo locked = 1; // Client should backoff or cleanup the lock then retry.
string retryable = 2; // Client may restart the txn. e.g write conflict.
string abort = 3; // Client should abort the txn.
WriteConflict conflict = 4; // Write conflict is moved from retryable to here.
AlreadyExist already_exist = 5; // Key already exists
}
message WriteConflict {
uint64 start_ts = 1;
uint64 conflict_ts = 2;
bytes key = 3;
bytes primary = 4;
}
enum CommandPri {
Normal = 0; // Normal must the default value
Low = 1;
High = 2;
}
enum IsolationLevel {
SI = 0; // SI = snapshot isolation
RC = 1; // RC = read committed
}
message Context {
reserved 4;
reserved "read_quorum";
uint64 region_id = 1;
metapb.RegionEpoch region_epoch = 2;
metapb.Peer peer = 3;
uint64 term = 5;
CommandPri priority = 6;
IsolationLevel isolation_level = 7;
bool not_fill_cache = 8;
bool sync_log = 9;
bool handle_time = 10; // true means return handle time detail
bool scan_detail = 11; // true means return scan cf's detail
}
message HandleTime {
int64 wait_ms = 1; // time in queue
int64 process_ms = 2; // process time without wait time.
}
message ScanInfo {
int64 total = 1; // total count
int64 processed = 2; // processed count
}
message ScanDetail {
ScanInfo write = 1;
ScanInfo lock = 2;
ScanInfo data = 3;
}
message ExecDetails {
HandleTime handle_time = 1;// set when ctx.handle_time = true or meet slow query
ScanDetail scan_detail = 2;// set when ctx.scan_detail = true or meet slow query
}
message GetRequest {
Context context = 1;
bytes key = 2;
uint64 version = 3;
}
message GetResponse {
errorpb.Error region_error = 1;
KeyError error = 2;
bytes value = 3;
}
message ScanRequest {
Context context = 1;
bytes start_key = 2;
uint32 limit = 3;
uint64 version = 4;
bool key_only = 5;
bool reverse = 6;
// For compatibility, when scanning forward, the range to scan is [start_key, end_key), where start_key < end_key;
// and when scanning backward, it scans [end_key, start_key) in descending order, where end_key < start_key.
bytes end_key = 7;
}
message KvPair {
KeyError error = 1;
bytes key = 2;
bytes value = 3;
}
message ScanResponse {
errorpb.Error region_error = 1;
repeated KvPair pairs = 2;
}
enum Op {
Put = 0;
Del = 1;
Lock = 2;
Rollback = 3;
// insert operation has a constraint that key should not exist before.
Insert = 4;
}
enum Assertion {
None = 0;
Exist = 1;
NotExist = 2;
}
message Mutation {
Op op = 1;
bytes key = 2;
bytes value = 3;
Assertion assertion = 4;
}
message PrewriteRequest {
Context context = 1;
repeated Mutation mutations = 2;
// primary_lock_key
bytes primary_lock = 3;
uint64 start_version = 4;
uint64 lock_ttl = 5;
bool skip_constraint_check = 6;
}
message PrewriteResponse {
errorpb.Error region_error = 1;
repeated KeyError errors = 2;
}
message CommitRequest {
reserved 5;
reserved "binlog";
Context context = 1;
uint64 start_version = 2;
repeated bytes keys = 3;
uint64 commit_version = 4;
}
message CommitResponse {
errorpb.Error region_error = 1;
KeyError error = 2;
}
message ImportRequest {
repeated Mutation mutations = 1;
uint64 commit_version = 2;
}
message ImportResponse {
errorpb.Error region_error = 1;
string error = 2;
}
message BatchRollbackRequest {
Context context = 1;
uint64 start_version = 2;
repeated bytes keys = 3;
}
message BatchRollbackResponse {
errorpb.Error region_error = 1;
KeyError error = 2;
}
message CleanupRequest {
Context context = 1;
bytes key = 2;
uint64 start_version = 3;
}
message CleanupResponse {
errorpb.Error region_error = 1;
KeyError error = 2;
uint64 commit_version = 3; // set this if the key is already committed
}
message BatchGetRequest {
Context context = 1;
repeated bytes keys = 2;
uint64 version = 3;
}
message BatchGetResponse {
errorpb.Error region_error = 1;
repeated KvPair pairs = 2;
}
message ScanLockRequest {
Context context = 1;
uint64 max_version = 2;
bytes start_key = 3;
uint32 limit = 4;
}
message ScanLockResponse {
errorpb.Error region_error = 1;
KeyError error = 2;
repeated LockInfo locks = 3;
}
message TxnInfo {
uint64 txn = 1;
uint64 status = 2;
}
message ResolveLockRequest {
Context context = 1;
uint64 start_version = 2;
// If the txn is rolled back, do not set it.
uint64 commit_version = 3;
repeated TxnInfo txn_infos = 4;
}
message ResolveLockResponse {
errorpb.Error region_error = 1;
KeyError error = 2;
}
message GCRequest {
Context context = 1;
uint64 safe_point = 2;
}
message GCResponse {
errorpb.Error region_error = 1;
KeyError error = 2;
}
message RawGetRequest {
Context context = 1;
bytes key = 2;
string cf = 3;
}
message RawGetResponse {
errorpb.Error region_error = 1;
string error = 2;
bytes value = 3;
}
message RawPutRequest {
Context context = 1;
bytes key = 2;
bytes value = 3;
string cf = 4;
}
message RawPutResponse {
errorpb.Error region_error = 1;
string error = 2;
}
message RawBatchPutRequest {
Context context = 1;
repeated KvPair pairs = 2;
string cf = 3;
}
message RawBatchPutResponse {
errorpb.Error region_error = 1;
string error = 2;
}
message RawBatchGetRequest {
Context context = 1;
repeated bytes keys = 2;
string cf = 3;
}
message RawBatchGetResponse {
errorpb.Error region_error = 1;
repeated KvPair pairs = 2;
}
message RawDeleteRequest {
Context context = 1;
bytes key = 2;
string cf = 3;
}
message RawDeleteResponse {
errorpb.Error region_error = 1;
string error = 2;
}
message RawBatchDeleteRequest {
Context context = 1;
repeated bytes keys = 2;
string cf = 3;
}
message RawBatchDeleteResponse {
errorpb.Error region_error = 1;
string error = 2;
}
message DeleteRangeRequest {
Context context = 1;
bytes start_key = 2;
bytes end_key = 3;
}
message DeleteRangeResponse {
errorpb.Error region_error = 1;
string error = 2;
}
message RawDeleteRangeRequest {
Context context = 1;
bytes start_key = 2;
bytes end_key = 3;
string cf = 4;
}
message RawDeleteRangeResponse {
errorpb.Error region_error = 1;
string error = 2;
}
message RawScanRequest {
Context context = 1;
bytes start_key = 2;
uint32 limit = 3;
bool key_only = 4;
string cf = 5;
bool reverse = 6;
// For compatibility, when scanning forward, the range to scan is [start_key, end_key), where start_key < end_key;
// and when scanning backward, it scans [end_key, start_key) in descending order, where end_key < start_key.
bytes end_key = 7;
}
message RawScanResponse {
errorpb.Error region_error = 1;
repeated KvPair kvs = 2;
}
message KeyRange {
bytes start_key = 1;
bytes end_key = 2;
}
message RawBatchScanRequest {
Context context = 1;
repeated KeyRange ranges = 2; // scanning range
uint32 each_limit = 3; // max number of returning kv pairs for each scanning range
bool key_only = 4;
string cf = 5;
bool reverse = 6;
}
message RawBatchScanResponse {
errorpb.Error region_error = 1;
repeated KvPair kvs = 2;
}
message MvccWrite {
Op type = 1;
uint64 start_ts = 2;
uint64 commit_ts = 3;
bytes short_value = 4;
}
message MvccValue {
uint64 start_ts = 1;
bytes value = 2;
}
message MvccLock {
Op type = 1;
uint64 start_ts = 2;
bytes primary = 3;
bytes short_value = 4;
}
message MvccInfo {
MvccLock lock = 1;
repeated MvccWrite writes = 2;
repeated MvccValue values = 3;
}
message MvccGetByKeyRequest {
Context context = 1;
bytes key = 2;
}
message MvccGetByKeyResponse {
errorpb.Error region_error = 1;
string error = 2;
MvccInfo info = 3;
}
message MvccGetByStartTsRequest {
Context context = 1;
uint64 start_ts = 2;
}
message MvccGetByStartTsResponse {
errorpb.Error region_error = 1;
string error = 2;
bytes key = 3;
MvccInfo info = 4;
}
message SplitRegionRequest {
Context context = 1;
bytes split_key = 2;
}
message SplitRegionResponse {
errorpb.Error region_error = 1;
metapb.Region left = 2;
metapb.Region right = 3;
}
message UnsafeDestroyRangeRequest {
Context context = 1;
bytes start_key = 2;
bytes end_key = 3;
}
message UnsafeDestroyRangeResponse {
errorpb.Error region_error = 1;
string error = 2;
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy