ikv.tikv-client.2.4.4-scala_2.11-RC1.source-code.errorpb.proto Maven / Gradle / Ivy
syntax = "proto3";
package errorpb;
import "metapb.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";
// NotLeader is the error variant that tells a request be handle by raft leader
// is sent to raft follower or learner.
message NotLeader {
// The requested region ID
uint64 region_id = 1;
// Region leader of the requested region
metapb.Peer leader = 2;
}
// StoreNotMatch is the error variant that tells the request is sent to wrong store.
// (i.e. inconsistency of the store ID that request shows and the real store ID of this server.)
message StoreNotMatch {
// Store id in request
uint64 request_store_id = 1;
// Actual store id
uint64 actual_store_id = 2;
}
// RegionNotFound is the error variant that tells there isn't any region in this TiKV
// matches the requested region ID.
message RegionNotFound {
// The requested region ID
uint64 region_id = 1;
}
// KeyNotInRegion is the error variant that tells the key the request requires isn't present in
// this region.
message KeyNotInRegion {
// The requested key
bytes key = 1;
// The requested region ID
uint64 region_id = 2;
// Start key of the requested region
bytes start_key = 3;
// Snd key of the requested region
bytes end_key = 4;
}
// EpochNotMatch is the error variant that tells a region has been updated.
// (e.g. by splitting / merging, or raft Confchange.)
// Hence, a command is based on a stale version of a region.
message EpochNotMatch {
// Available regions that may be siblings of the requested one.
repeated metapb.Region current_regions = 1;
}
// ServerIsBusy is the error variant that tells the server is too busy to response.
message ServerIsBusy {
string reason = 1;
// The suggested backoff time
uint64 backoff_ms = 2;
}
// StaleCommand is the error variant that tells the command is stale, that is,
// the current request term is lower than current raft term.
// This can be retried at most time.
message StaleCommand {
}
// RaftEntryTooLarge is the error variant that tells the request is too large to be serialized to a
// reasonable small raft entry.
// (i.e. greater than the configured value `raft_entry_max_size` in `raftstore`)
message RaftEntryTooLarge {
// The requested region ID
uint64 region_id = 1;
// Size of the raft entry
uint64 entry_size = 2;
}
// MaxTimestampNotSynced is the error variant that tells the peer has just become a leader and
// updating the max timestamp in the concurrency manager from PD TSO is ongoing. In this case,
// the prewrite of an async commit transaction cannot succeed. The client can backoff and
// resend the request.
message MaxTimestampNotSynced {
}
// ReadIndexNotReady is the error variant that tells the read index request is not ready, that is,
// the current region is in a status that not ready to serve the read index request. For example,
// region is in splitting or merging status.
// This can be retried at most time.
message ReadIndexNotReady {
// The reason why the region is not ready to serve read index request
string reason = 1;
// The requested region ID
uint64 region_id = 2;
}
// ProposalInMergingMode is the error variant that tells the proposal is rejected because raft is
// in the merging mode. This may happen when BR/Lightning try to ingest SST.
// This can be retried at most time.
message ProposalInMergingMode {
// The requested region ID
uint64 region_id = 1;
}
// Error wraps all region errors, indicates an error encountered by a request.
message Error {
reserved "stale_epoch";
// The error message
string message = 1;
NotLeader not_leader = 2;
RegionNotFound region_not_found = 3;
KeyNotInRegion key_not_in_region = 4;
EpochNotMatch epoch_not_match = 5;
ServerIsBusy server_is_busy = 6;
StaleCommand stale_command = 7;
StoreNotMatch store_not_match = 8;
RaftEntryTooLarge raft_entry_too_large = 9;
MaxTimestampNotSynced max_timestamp_not_synced = 10;
ReadIndexNotReady read_index_not_ready = 11;
ProposalInMergingMode proposal_in_merging_mode = 12;
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy