consensus

package
v0.0.0-...-c201ef6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 16, 2021 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Default_LogSegmentFooterPB_MinReplicateIndex = int64(-1)
	Default_LogSegmentFooterPB_MaxReplicateIndex = int64(-1)
)

Default values for LogSegmentFooterPB fields.

View Source
const (
	Default_ChangeConfigRequestPB_UseHost = bool(false)
)

Default values for ChangeConfigRequestPB fields.

View Source
const (
	Default_GetConsensusStateRequestPB_Type = common.ConsensusConfigType_CONSENSUS_CONFIG_COMMITTED
)

Default values for GetConsensusStateRequestPB fields.

View Source
const (
	Default_GetLastOpIdRequestPB_OpidType = OpIdType_RECEIVED_OPID
)

Default values for GetLastOpIdRequestPB fields.

View Source
const (
	Default_StartRemoteBootstrapRequestPB_CallerTerm = int64(-1)
)

Default values for StartRemoteBootstrapRequestPB fields.

View Source
const (
	Default_VoteRequestPB_IgnoreLiveLeader = bool(false)
)

Default values for VoteRequestPB fields.

Variables

View Source
var (
	OperationType_name = map[int32]string{
		0:  "UNKNOWN_OP",
		1:  "NO_OP",
		3:  "WRITE_OP",
		4:  "CHANGE_METADATA_OP",
		5:  "CHANGE_CONFIG_OP",
		6:  "UPDATE_TRANSACTION_OP",
		7:  "SNAPSHOT_OP",
		8:  "TRUNCATE_OP",
		9:  "HISTORY_CUTOFF_OP",
		10: "SPLIT_OP",
	}
	OperationType_value = map[string]int32{
		"UNKNOWN_OP":            0,
		"NO_OP":                 1,
		"WRITE_OP":              3,
		"CHANGE_METADATA_OP":    4,
		"CHANGE_CONFIG_OP":      5,
		"UPDATE_TRANSACTION_OP": 6,
		"SNAPSHOT_OP":           7,
		"TRUNCATE_OP":           8,
		"HISTORY_CUTOFF_OP":     9,
		"SPLIT_OP":              10,
	}
)

Enum value maps for OperationType.

View Source
var (
	DriverType_name = map[int32]string{
		0: "UNKNOWN_DRIVER",
		1: "LEADER",
		2: "REPLICA",
	}
	DriverType_value = map[string]int32{
		"UNKNOWN_DRIVER": 0,
		"LEADER":         1,
		"REPLICA":        2,
	}
)

Enum value maps for DriverType.

View Source
var (
	ChangeConfigType_name = map[int32]string{
		0: "UNKNOWN_CHANGE",
		1: "ADD_SERVER",
		2: "REMOVE_SERVER",
		3: "CHANGE_ROLE",
	}
	ChangeConfigType_value = map[string]int32{
		"UNKNOWN_CHANGE": 0,
		"ADD_SERVER":     1,
		"REMOVE_SERVER":  2,
		"CHANGE_ROLE":    3,
	}
)

Enum value maps for ChangeConfigType.

View Source
var (
	LeaderLeaseStatus_name = map[int32]string{
		0: "HAS_LEASE",
		1: "OLD_LEADER_MAY_HAVE_LEASE",
		2: "NO_MAJORITY_REPLICATED_LEASE",
	}
	LeaderLeaseStatus_value = map[string]int32{
		"HAS_LEASE":                    0,
		"OLD_LEADER_MAY_HAVE_LEASE":    1,
		"NO_MAJORITY_REPLICATED_LEASE": 2,
	}
)

Enum value maps for LeaderLeaseStatus.

View Source
var (
	OpIdType_name = map[int32]string{
		0: "UNKNOWN_OPID_TYPE",
		1: "RECEIVED_OPID",
		2: "COMMITTED_OPID",
	}
	OpIdType_value = map[string]int32{
		"UNKNOWN_OPID_TYPE": 0,
		"RECEIVED_OPID":     1,
		"COMMITTED_OPID":    2,
	}
)

Enum value maps for OpIdType.

View Source
var (
	ConsensusErrorPB_Code_name = map[int32]string{
		0:  "UNKNOWN",
		2:  "INVALID_TERM",
		3:  "LAST_OPID_TOO_OLD",
		4:  "ALREADY_VOTED",
		5:  "NOT_IN_QUORUM",
		6:  "PRECEDING_ENTRY_DIDNT_MATCH",
		7:  "LEADER_IS_ALIVE",
		8:  "CONSENSUS_BUSY",
		9:  "CANNOT_PREPARE",
		10: "TABLET_SPLIT",
	}
	ConsensusErrorPB_Code_value = map[string]int32{
		"UNKNOWN":                     0,
		"INVALID_TERM":                2,
		"LAST_OPID_TOO_OLD":           3,
		"ALREADY_VOTED":               4,
		"NOT_IN_QUORUM":               5,
		"PRECEDING_ENTRY_DIDNT_MATCH": 6,
		"LEADER_IS_ALIVE":             7,
		"CONSENSUS_BUSY":              8,
		"CANNOT_PREPARE":              9,
		"TABLET_SPLIT":                10,
	}
)

Enum value maps for ConsensusErrorPB_Code.

View Source
var (
	LogEntryTypePB_name = map[int32]string{
		0:   "UNKNOWN",
		1:   "REPLICATE",
		999: "FLUSH_MARKER",
	}
	LogEntryTypePB_value = map[string]int32{
		"UNKNOWN":      0,
		"REPLICATE":    1,
		"FLUSH_MARKER": 999,
	}
)

Enum value maps for LogEntryTypePB.

View Source
var File_yb_consensus_consensus_proto protoreflect.FileDescriptor
View Source
var File_yb_consensus_log_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type ChangeConfigRecordPB

type ChangeConfigRecordPB struct {
	TabletId []byte `protobuf:"bytes,1,req,name=tablet_id,json=tabletId" json:"tablet_id,omitempty"`
	// The old committed configuration config for verification purposes.
	OldConfig *common.RaftConfigPB `protobuf:"bytes,2,req,name=old_config,json=oldConfig" json:"old_config,omitempty"`
	// The new configuration to set the configuration to.
	NewConfig *common.RaftConfigPB `protobuf:"bytes,3,req,name=new_config,json=newConfig" json:"new_config,omitempty"`
	// contains filtered or unexported fields
}

A configuration change request for the tablet with 'tablet_id'. This message is dynamically generated by the leader when AddServer() or RemoveServer() is called, and is what gets replicated to the log.

func (*ChangeConfigRecordPB) Descriptor deprecated

func (*ChangeConfigRecordPB) Descriptor() ([]byte, []int)

Deprecated: Use ChangeConfigRecordPB.ProtoReflect.Descriptor instead.

func (*ChangeConfigRecordPB) GetNewConfig

func (x *ChangeConfigRecordPB) GetNewConfig() *common.RaftConfigPB

func (*ChangeConfigRecordPB) GetOldConfig

func (x *ChangeConfigRecordPB) GetOldConfig() *common.RaftConfigPB

func (*ChangeConfigRecordPB) GetTabletId

func (x *ChangeConfigRecordPB) GetTabletId() []byte

func (*ChangeConfigRecordPB) MarshalJSON

func (m *ChangeConfigRecordPB) MarshalJSON() ([]byte, error)

func (*ChangeConfigRecordPB) ProtoMessage

func (*ChangeConfigRecordPB) ProtoMessage()

func (*ChangeConfigRecordPB) ProtoReflect

func (x *ChangeConfigRecordPB) ProtoReflect() protoreflect.Message

func (*ChangeConfigRecordPB) Reset

func (x *ChangeConfigRecordPB) Reset()

func (*ChangeConfigRecordPB) String

func (x *ChangeConfigRecordPB) String() string

func (*ChangeConfigRecordPB) UnmarshalJSON

func (m *ChangeConfigRecordPB) UnmarshalJSON(b []byte) error

type ChangeConfigRequestPB

type ChangeConfigRequestPB struct {

	// UUID of server this request is addressed to.
	DestUuid []byte `protobuf:"bytes,4,opt,name=dest_uuid,json=destUuid" json:"dest_uuid,omitempty"`
	TabletId []byte `protobuf:"bytes,1,req,name=tablet_id,json=tabletId" json:"tablet_id,omitempty"`
	// The type of config change requested.
	// This field must be specified, but is left as optional due to being an enum.
	Type *ChangeConfigType `protobuf:"varint,2,opt,name=type,enum=yb.consensus.ChangeConfigType" json:"type,omitempty"`
	// The peer to add or remove.
	// When 'type' == ADD_SERVER, both the permanent_uuid and last_known_addr
	// fields must be set. For REMOVE_SERVER, either the permanent_uuid field or
	// last_known_addr should be set - 'use_host' is for using the latter.
	Server *common.RaftPeerPB `protobuf:"bytes,3,opt,name=server" json:"server,omitempty"`
	// The OpId index of the committed config to replace.
	// This optional parameter is here to provide an atomic (compare-and-swap)
	// ChangeConfig operation. The ChangeConfig() operation will fail if this
	// parameter is specified and the committed config does not have a matching
	// opid_index. See also the definition of RaftConfigPB.
	CasConfigOpidIndex *int64 `protobuf:"varint,5,opt,name=cas_config_opid_index,json=casConfigOpidIndex" json:"cas_config_opid_index,omitempty"`
	// For REMOVE case, when this is set, we assume that the peer is dead and will not
	// affect the quorum anymore. So we skip checking/using its server uuid and remove
	// it based on the ip/port info from 'server'.
	UseHost *bool `protobuf:"varint,6,opt,name=use_host,json=useHost,def=0" json:"use_host,omitempty"`
	// contains filtered or unexported fields
}

A configuration change request for the tablet with 'tablet_id'. These requests are restricted to one-by-one operations, as specified in Diego Ongaro's Raft PhD thesis. This is the RPC request, but it does not end up in the log. See also ChangeConfigRecordPB.

func (*ChangeConfigRequestPB) Descriptor deprecated

func (*ChangeConfigRequestPB) Descriptor() ([]byte, []int)

Deprecated: Use ChangeConfigRequestPB.ProtoReflect.Descriptor instead.

func (*ChangeConfigRequestPB) GetCasConfigOpidIndex

func (x *ChangeConfigRequestPB) GetCasConfigOpidIndex() int64

func (*ChangeConfigRequestPB) GetDestUuid

func (x *ChangeConfigRequestPB) GetDestUuid() []byte

func (*ChangeConfigRequestPB) GetServer

func (x *ChangeConfigRequestPB) GetServer() *common.RaftPeerPB

func (*ChangeConfigRequestPB) GetTabletId

func (x *ChangeConfigRequestPB) GetTabletId() []byte

func (*ChangeConfigRequestPB) GetType

func (*ChangeConfigRequestPB) GetUseHost

func (x *ChangeConfigRequestPB) GetUseHost() bool

func (*ChangeConfigRequestPB) MarshalJSON

func (m *ChangeConfigRequestPB) MarshalJSON() ([]byte, error)

func (*ChangeConfigRequestPB) ProtoMessage

func (*ChangeConfigRequestPB) ProtoMessage()

func (*ChangeConfigRequestPB) ProtoReflect

func (x *ChangeConfigRequestPB) ProtoReflect() protoreflect.Message

func (*ChangeConfigRequestPB) Reset

func (x *ChangeConfigRequestPB) Reset()

func (*ChangeConfigRequestPB) String

func (x *ChangeConfigRequestPB) String() string

func (*ChangeConfigRequestPB) UnmarshalJSON

func (m *ChangeConfigRequestPB) UnmarshalJSON(b []byte) error

type ChangeConfigResponsePB

type ChangeConfigResponsePB struct {
	Error *tserver.TabletServerErrorPB `protobuf:"bytes,1,opt,name=error" json:"error,omitempty"`
	// The hybrid_time chosen by the server for this change config operation.
	// TODO: At the time of writing, this field is never set in the response.
	// TODO: Propagate signed hybrid_times. See KUDU-611.
	HybridTime *uint64 `protobuf:"fixed64,2,opt,name=hybrid_time,json=hybridTime" json:"hybrid_time,omitempty"`
	// contains filtered or unexported fields
}

The configuration change response. If any immediate error occurred the 'error' field is set with it.

func (*ChangeConfigResponsePB) Descriptor deprecated

func (*ChangeConfigResponsePB) Descriptor() ([]byte, []int)

Deprecated: Use ChangeConfigResponsePB.ProtoReflect.Descriptor instead.

func (*ChangeConfigResponsePB) GetError

func (*ChangeConfigResponsePB) GetHybridTime

func (x *ChangeConfigResponsePB) GetHybridTime() uint64

func (*ChangeConfigResponsePB) MarshalJSON

func (m *ChangeConfigResponsePB) MarshalJSON() ([]byte, error)

func (*ChangeConfigResponsePB) ProtoMessage

func (*ChangeConfigResponsePB) ProtoMessage()

func (*ChangeConfigResponsePB) ProtoReflect

func (x *ChangeConfigResponsePB) ProtoReflect() protoreflect.Message

func (*ChangeConfigResponsePB) Reset

func (x *ChangeConfigResponsePB) Reset()

func (*ChangeConfigResponsePB) String

func (x *ChangeConfigResponsePB) String() string

func (*ChangeConfigResponsePB) UnmarshalJSON

func (m *ChangeConfigResponsePB) UnmarshalJSON(b []byte) error

type ChangeConfigType

type ChangeConfigType int32
const (
	ChangeConfigType_UNKNOWN_CHANGE ChangeConfigType = 0
	ChangeConfigType_ADD_SERVER     ChangeConfigType = 1
	ChangeConfigType_REMOVE_SERVER  ChangeConfigType = 2
	ChangeConfigType_CHANGE_ROLE    ChangeConfigType = 3
)

func (ChangeConfigType) Descriptor

func (ChangeConfigType) Enum

func (ChangeConfigType) EnumDescriptor deprecated

func (ChangeConfigType) EnumDescriptor() ([]byte, []int)

Deprecated: Use ChangeConfigType.Descriptor instead.

func (ChangeConfigType) Number

func (ChangeConfigType) String

func (x ChangeConfigType) String() string

func (ChangeConfigType) Type

func (*ChangeConfigType) UnmarshalJSON deprecated

func (x *ChangeConfigType) UnmarshalJSON(b []byte) error

Deprecated: Do not use.

type ConsensusErrorPB

type ConsensusErrorPB struct {

	// The error code.
	Code *ConsensusErrorPB_Code `protobuf:"varint,1,req,name=code,enum=yb.consensus.ConsensusErrorPB_Code" json:"code,omitempty"`
	// The Status object for the error. This will include a textual
	// message that may be more useful to present in log messages, etc,
	// though its error code is less specific.
	Status *common.AppStatusPB `protobuf:"bytes,2,req,name=status" json:"status,omitempty"`
	// contains filtered or unexported fields
}

Consensus-specific errors use this protobuf

func (*ConsensusErrorPB) Descriptor deprecated

func (*ConsensusErrorPB) Descriptor() ([]byte, []int)

Deprecated: Use ConsensusErrorPB.ProtoReflect.Descriptor instead.

func (*ConsensusErrorPB) GetCode

func (*ConsensusErrorPB) GetStatus

func (x *ConsensusErrorPB) GetStatus() *common.AppStatusPB

func (*ConsensusErrorPB) MarshalJSON

func (m *ConsensusErrorPB) MarshalJSON() ([]byte, error)

func (*ConsensusErrorPB) ProtoMessage

func (*ConsensusErrorPB) ProtoMessage()

func (*ConsensusErrorPB) ProtoReflect

func (x *ConsensusErrorPB) ProtoReflect() protoreflect.Message

func (*ConsensusErrorPB) Reset

func (x *ConsensusErrorPB) Reset()

func (*ConsensusErrorPB) String

func (x *ConsensusErrorPB) String() string

func (*ConsensusErrorPB) UnmarshalJSON

func (m *ConsensusErrorPB) UnmarshalJSON(b []byte) error

type ConsensusErrorPB_Code

type ConsensusErrorPB_Code int32

The codes for consensus responses. These are set in the status when some consensus internal error occurs and require special handling by the caller. A generic error code is purposefully absent since generic errors should use tserver.TabletServerErrorPB.

const (
	ConsensusErrorPB_UNKNOWN ConsensusErrorPB_Code = 0
	// Invalid term.
	// Sent by peers in response to leader RPCs whenever the term
	// of one of the messages sent in a batch is lower than the
	// the term the peer is expecting.
	ConsensusErrorPB_INVALID_TERM ConsensusErrorPB_Code = 2
	// For leader election.
	// The last OpId logged by the candidate is older than the last OpId logged
	// by the local peer.
	ConsensusErrorPB_LAST_OPID_TOO_OLD ConsensusErrorPB_Code = 3
	// For leader election.
	// The local replica has already voted for another candidate in this term.
	ConsensusErrorPB_ALREADY_VOTED ConsensusErrorPB_Code = 4
	// The replica does not recognize the caller's request as coming from a
	// member of the configuration.
	ConsensusErrorPB_NOT_IN_QUORUM ConsensusErrorPB_Code = 5
	// The responder's last entry didn't match the caller's preceding entry.
	ConsensusErrorPB_PRECEDING_ENTRY_DIDNT_MATCH ConsensusErrorPB_Code = 6
	// The local replica is either a leader, or has heard from a valid leader
	// more recently than the election timeout, so believes the leader to be alive.
	ConsensusErrorPB_LEADER_IS_ALIVE ConsensusErrorPB_Code = 7
	// The local replica is in the middle of servicing either another vote
	// or an update from a valid leader.
	ConsensusErrorPB_CONSENSUS_BUSY ConsensusErrorPB_Code = 8
	// The local replica was unable to prepare a single transaction.
	ConsensusErrorPB_CANNOT_PREPARE ConsensusErrorPB_Code = 9
	// Split operation has been added to this Raft group log.
	ConsensusErrorPB_TABLET_SPLIT ConsensusErrorPB_Code = 10
)

func (ConsensusErrorPB_Code) Descriptor

func (ConsensusErrorPB_Code) Enum

func (ConsensusErrorPB_Code) EnumDescriptor deprecated

func (ConsensusErrorPB_Code) EnumDescriptor() ([]byte, []int)

Deprecated: Use ConsensusErrorPB_Code.Descriptor instead.

func (ConsensusErrorPB_Code) Number

func (ConsensusErrorPB_Code) String

func (x ConsensusErrorPB_Code) String() string

func (ConsensusErrorPB_Code) Type

func (*ConsensusErrorPB_Code) UnmarshalJSON deprecated

func (x *ConsensusErrorPB_Code) UnmarshalJSON(b []byte) error

Deprecated: Do not use.

type ConsensusRequestPB

type ConsensusRequestPB struct {

	// UUID of server this request is addressed to.
	DestUuid []byte  `protobuf:"bytes,7,opt,name=dest_uuid,json=destUuid" json:"dest_uuid,omitempty"`
	TabletId *string `protobuf:"bytes,1,req,name=tablet_id,json=tabletId" json:"tablet_id,omitempty"`
	// The uuid of the peer making the call.
	CallerUuid []byte `protobuf:"bytes,2,req,name=caller_uuid,json=callerUuid" json:"caller_uuid,omitempty"`
	// The caller's term. As only leaders can send messages,
	// replicas will accept all messages as long as the term
	// is equal to or higher than the last term they know about.
	// If a leader receives a request with a term higher than its own,
	// it will step down and enter FOLLOWER state (see Raft sec. 5.1).
	CallerTerm *int64 `protobuf:"varint,3,req,name=caller_term,json=callerTerm" json:"caller_term,omitempty"`
	// The id of the operation immediately preceding the first
	// operation in 'ops'. If the replica is receiving 'ops' for
	// the first time 'preceding_id' must match the replica's
	// last operation.
	//
	// This must be set if 'ops' is non-empty.
	PrecedingId *util.OpIdPB `protobuf:"bytes,4,opt,name=preceding_id,json=precedingId" json:"preceding_id,omitempty"`
	// The id of the last committed operation in the configuration. This is the
	// id of the last operation the leader deemed committed from a consensus
	// standpoint (not the last operation the leader applied).
	//
	// Raft calls this field 'leaderCommit'.
	CommittedOpId *util.OpIdPB `protobuf:"bytes,5,req,name=committed_op_id,json=committedOpId" json:"committed_op_id,omitempty"`
	// Sequence of operations to be replicated by this peer.
	// These will be committed when committed_index advances above their
	// respective OpIds. In some cases committed_index can indicate that
	// these operations are already committed, in which case they will be
	// committed during the same request.
	Ops []*ReplicateMsg `protobuf:"bytes,6,rep,name=ops" json:"ops,omitempty"`
	// Leader lease duration in milliseconds. A leader is not allowed to serve up-to-date reads
	// until it is able to replicate a lease extension. A new leader cannot assume its
	// responsibilities until this amount time has definitely passed since the old leader sent the
	// consensus request. Due to potential clock skew, we are not sending a timestamp, but an amount
	// of time followers have to wait.
	LeaderLeaseDurationMs *int32 `protobuf:"varint,8,opt,name=leader_lease_duration_ms,json=leaderLeaseDurationMs" json:"leader_lease_duration_ms,omitempty"`
	// Leader lease expiration, physical part of hybrid time. A new leader cannot add new
	// entries to RAFT log until hybrid time passes this expiration.
	HtLeaseExpiration *uint64 `protobuf:"fixed64,9,opt,name=ht_lease_expiration,json=htLeaseExpiration" json:"ht_lease_expiration,omitempty"`
	// Safe time measured on the leader at the time this request was generated.
	PropagatedSafeTime *uint64 `protobuf:"fixed64,10,opt,name=propagated_safe_time,json=propagatedSafeTime" json:"propagated_safe_time,omitempty"`
	// Hybrid time on the leader when this request was generated.
	PropagatedHybridTime *uint64 `protobuf:"fixed64,11,opt,name=propagated_hybrid_time,json=propagatedHybridTime" json:"propagated_hybrid_time,omitempty"`
	// contains filtered or unexported fields
}

A consensus request message, the basic unit of a consensus round.

func (*ConsensusRequestPB) Descriptor deprecated

func (*ConsensusRequestPB) Descriptor() ([]byte, []int)

Deprecated: Use ConsensusRequestPB.ProtoReflect.Descriptor instead.

func (*ConsensusRequestPB) GetCallerTerm

func (x *ConsensusRequestPB) GetCallerTerm() int64

func (*ConsensusRequestPB) GetCallerUuid

func (x *ConsensusRequestPB) GetCallerUuid() []byte

func (*ConsensusRequestPB) GetCommittedOpId

func (x *ConsensusRequestPB) GetCommittedOpId() *util.OpIdPB

func (*ConsensusRequestPB) GetDestUuid

func (x *ConsensusRequestPB) GetDestUuid() []byte

func (*ConsensusRequestPB) GetHtLeaseExpiration

func (x *ConsensusRequestPB) GetHtLeaseExpiration() uint64

func (*ConsensusRequestPB) GetLeaderLeaseDurationMs

func (x *ConsensusRequestPB) GetLeaderLeaseDurationMs() int32

func (*ConsensusRequestPB) GetOps

func (x *ConsensusRequestPB) GetOps() []*ReplicateMsg

func (*ConsensusRequestPB) GetPrecedingId

func (x *ConsensusRequestPB) GetPrecedingId() *util.OpIdPB

func (*ConsensusRequestPB) GetPropagatedHybridTime

func (x *ConsensusRequestPB) GetPropagatedHybridTime() uint64

func (*ConsensusRequestPB) GetPropagatedSafeTime

func (x *ConsensusRequestPB) GetPropagatedSafeTime() uint64

func (*ConsensusRequestPB) GetTabletId

func (x *ConsensusRequestPB) GetTabletId() string

func (*ConsensusRequestPB) MarshalJSON

func (m *ConsensusRequestPB) MarshalJSON() ([]byte, error)

func (*ConsensusRequestPB) ProtoMessage

func (*ConsensusRequestPB) ProtoMessage()

func (*ConsensusRequestPB) ProtoReflect

func (x *ConsensusRequestPB) ProtoReflect() protoreflect.Message

func (*ConsensusRequestPB) Reset

func (x *ConsensusRequestPB) Reset()

func (*ConsensusRequestPB) String

func (x *ConsensusRequestPB) String() string

func (*ConsensusRequestPB) UnmarshalJSON

func (m *ConsensusRequestPB) UnmarshalJSON(b []byte) error

type ConsensusResponsePB

type ConsensusResponsePB struct {

	// The uuid of the peer making the response.
	ResponderUuid []byte `protobuf:"bytes,1,opt,name=responder_uuid,json=responderUuid" json:"responder_uuid,omitempty"`
	// The current term of the peer making the response.
	// This is used to update the caller (and make it step down if it is
	// out of date).
	ResponderTerm *int64 `protobuf:"varint,2,opt,name=responder_term,json=responderTerm" json:"responder_term,omitempty"`
	// The current consensus status of the receiver peer.
	Status *ConsensusStatusPB `protobuf:"bytes,3,opt,name=status" json:"status,omitempty"`
	// A generic error message (such as tablet not found), per operation
	// error messages are sent along with the consensus status.
	Error *tserver.TabletServerErrorPB `protobuf:"bytes,999,opt,name=error" json:"error,omitempty"`
	// Number of SST files in this follower regular db.
	NumSstFiles *int64 `protobuf:"varint,5,opt,name=num_sst_files,json=numSstFiles" json:"num_sst_files,omitempty"`
	// Hybrid time on the follower when this request was processed.
	PropagatedHybridTime *uint64 `protobuf:"fixed64,6,opt,name=propagated_hybrid_time,json=propagatedHybridTime" json:"propagated_hybrid_time,omitempty"`
	// contains filtered or unexported fields
}

func (*ConsensusResponsePB) Descriptor deprecated

func (*ConsensusResponsePB) Descriptor() ([]byte, []int)

Deprecated: Use ConsensusResponsePB.ProtoReflect.Descriptor instead.

func (*ConsensusResponsePB) GetError

func (*ConsensusResponsePB) GetNumSstFiles

func (x *ConsensusResponsePB) GetNumSstFiles() int64

func (*ConsensusResponsePB) GetPropagatedHybridTime

func (x *ConsensusResponsePB) GetPropagatedHybridTime() uint64

func (*ConsensusResponsePB) GetResponderTerm

func (x *ConsensusResponsePB) GetResponderTerm() int64

func (*ConsensusResponsePB) GetResponderUuid

func (x *ConsensusResponsePB) GetResponderUuid() []byte

func (*ConsensusResponsePB) GetStatus

func (x *ConsensusResponsePB) GetStatus() *ConsensusStatusPB

func (*ConsensusResponsePB) MarshalJSON

func (m *ConsensusResponsePB) MarshalJSON() ([]byte, error)

func (*ConsensusResponsePB) ProtoMessage

func (*ConsensusResponsePB) ProtoMessage()

func (*ConsensusResponsePB) ProtoReflect

func (x *ConsensusResponsePB) ProtoReflect() protoreflect.Message

func (*ConsensusResponsePB) Reset

func (x *ConsensusResponsePB) Reset()

func (*ConsensusResponsePB) String

func (x *ConsensusResponsePB) String() string

func (*ConsensusResponsePB) UnmarshalJSON

func (m *ConsensusResponsePB) UnmarshalJSON(b []byte) error

type ConsensusService

type ConsensusService interface {
	UpdateConsensus(request *ConsensusRequestPB) (*ConsensusResponsePB, error)
	RequestConsensusVote(request *VoteRequestPB) (*VoteResponsePB, error)
	ChangeConfig(request *ChangeConfigRequestPB) (*ChangeConfigResponsePB, error)
	GetNodeInstance(request *GetNodeInstanceRequestPB) (*GetNodeInstanceResponsePB, error)
	RunLeaderElection(request *RunLeaderElectionRequestPB) (*RunLeaderElectionResponsePB, error)
	LeaderElectionLost(request *LeaderElectionLostRequestPB) (*LeaderElectionLostResponsePB, error)
	LeaderStepDown(request *LeaderStepDownRequestPB) (*LeaderStepDownResponsePB, error)
	GetLastOpId(request *GetLastOpIdRequestPB) (*GetLastOpIdResponsePB, error)
	GetConsensusState(request *GetConsensusStateRequestPB) (*GetConsensusStateResponsePB, error)
	StartRemoteBootstrap(request *StartRemoteBootstrapRequestPB) (*StartRemoteBootstrapResponsePB, error)
}

type ConsensusServiceImpl

type ConsensusServiceImpl struct {
	Log       logr.Logger
	Messenger message.Messenger
}

func (*ConsensusServiceImpl) ChangeConfig

func (*ConsensusServiceImpl) GetConsensusState

func (*ConsensusServiceImpl) GetLastOpId

func (*ConsensusServiceImpl) GetNodeInstance

func (*ConsensusServiceImpl) LeaderElectionLost

func (*ConsensusServiceImpl) LeaderStepDown

func (*ConsensusServiceImpl) RequestConsensusVote

func (s *ConsensusServiceImpl) RequestConsensusVote(request *VoteRequestPB) (*VoteResponsePB, error)

func (*ConsensusServiceImpl) RunLeaderElection

func (*ConsensusServiceImpl) StartRemoteBootstrap

func (*ConsensusServiceImpl) UpdateConsensus

func (s *ConsensusServiceImpl) UpdateConsensus(request *ConsensusRequestPB) (*ConsensusResponsePB, error)

type ConsensusStatusPB

type ConsensusStatusPB struct {

	// The last message received (and replicated) by the peer.
	LastReceived *util.OpIdPB `protobuf:"bytes,1,req,name=last_received,json=lastReceived" json:"last_received,omitempty"`
	// The id of the last op that was replicated by the current leader.
	// This doesn't necessarily mean that the term of this op equals the current
	// term, since the current leader may be replicating ops from a prior term.
	// Unset if none currently received.
	//
	// In the case where there is a log matching property error
	// (PRECEDING_ENTRY_DIDNT_MATCH), this field is important and may still be
	// set, since the leader queue uses this field in conjuction with
	// last_received to decide on the next id to send to the follower.
	LastReceivedCurrentLeader *util.OpIdPB `` /* 133-byte string literal not displayed */
	// The last committed index that is known to the peer.
	LastCommittedIdx *int64 `protobuf:"varint,2,opt,name=last_committed_idx,json=lastCommittedIdx" json:"last_committed_idx,omitempty"`
	// The last operation applied by the peer.
	LastApplied *util.OpIdPB `protobuf:"bytes,5,opt,name=last_applied,json=lastApplied" json:"last_applied,omitempty"`
	// When the last request failed for some consensus related (internal) reason.
	// In some cases the error will have a specific code that the caller will
	// have to handle in certain ways.
	Error *ConsensusErrorPB `protobuf:"bytes,3,opt,name=error" json:"error,omitempty"`
	// contains filtered or unexported fields
}

Status message received in the peer responses.

func (*ConsensusStatusPB) Descriptor deprecated

func (*ConsensusStatusPB) Descriptor() ([]byte, []int)

Deprecated: Use ConsensusStatusPB.ProtoReflect.Descriptor instead.

func (*ConsensusStatusPB) GetError

func (x *ConsensusStatusPB) GetError() *ConsensusErrorPB

func (*ConsensusStatusPB) GetLastApplied

func (x *ConsensusStatusPB) GetLastApplied() *util.OpIdPB

func (*ConsensusStatusPB) GetLastCommittedIdx

func (x *ConsensusStatusPB) GetLastCommittedIdx() int64

func (*ConsensusStatusPB) GetLastReceived

func (x *ConsensusStatusPB) GetLastReceived() *util.OpIdPB

func (*ConsensusStatusPB) GetLastReceivedCurrentLeader

func (x *ConsensusStatusPB) GetLastReceivedCurrentLeader() *util.OpIdPB

func (*ConsensusStatusPB) MarshalJSON

func (m *ConsensusStatusPB) MarshalJSON() ([]byte, error)

func (*ConsensusStatusPB) ProtoMessage

func (*ConsensusStatusPB) ProtoMessage()

func (*ConsensusStatusPB) ProtoReflect

func (x *ConsensusStatusPB) ProtoReflect() protoreflect.Message

func (*ConsensusStatusPB) Reset

func (x *ConsensusStatusPB) Reset()

func (*ConsensusStatusPB) String

func (x *ConsensusStatusPB) String() string

func (*ConsensusStatusPB) UnmarshalJSON

func (m *ConsensusStatusPB) UnmarshalJSON(b []byte) error

type DriverType

type DriverType int32

The transaction driver type: indicates whether a transaction is being executed on a leader or a replica.

const (
	DriverType_UNKNOWN_DRIVER DriverType = 0
	DriverType_LEADER         DriverType = 1
	DriverType_REPLICA        DriverType = 2
)

func (DriverType) Descriptor

func (DriverType) Descriptor() protoreflect.EnumDescriptor

func (DriverType) Enum

func (x DriverType) Enum() *DriverType

func (DriverType) EnumDescriptor deprecated

func (DriverType) EnumDescriptor() ([]byte, []int)

Deprecated: Use DriverType.Descriptor instead.

func (DriverType) Number

func (x DriverType) Number() protoreflect.EnumNumber

func (DriverType) String

func (x DriverType) String() string

func (DriverType) Type

func (*DriverType) UnmarshalJSON deprecated

func (x *DriverType) UnmarshalJSON(b []byte) error

Deprecated: Do not use.

type GetConsensusStateRequestPB

type GetConsensusStateRequestPB struct {

	// UUID of server this request is addressed to.
	DestUuid []byte `protobuf:"bytes,2,opt,name=dest_uuid,json=destUuid" json:"dest_uuid,omitempty"`
	// The id of the tablet.
	TabletId []byte `protobuf:"bytes,1,req,name=tablet_id,json=tabletId" json:"tablet_id,omitempty"`
	// Whether to fetch the committed or active consensus state.
	Type *common.ConsensusConfigType `protobuf:"varint,3,opt,name=type,enum=yb.consensus.ConsensusConfigType,def=1" json:"type,omitempty"`
	// contains filtered or unexported fields
}

func (*GetConsensusStateRequestPB) Descriptor deprecated

func (*GetConsensusStateRequestPB) Descriptor() ([]byte, []int)

Deprecated: Use GetConsensusStateRequestPB.ProtoReflect.Descriptor instead.

func (*GetConsensusStateRequestPB) GetDestUuid

func (x *GetConsensusStateRequestPB) GetDestUuid() []byte

func (*GetConsensusStateRequestPB) GetTabletId

func (x *GetConsensusStateRequestPB) GetTabletId() []byte

func (*GetConsensusStateRequestPB) GetType

func (*GetConsensusStateRequestPB) MarshalJSON

func (m *GetConsensusStateRequestPB) MarshalJSON() ([]byte, error)

func (*GetConsensusStateRequestPB) ProtoMessage

func (*GetConsensusStateRequestPB) ProtoMessage()

func (*GetConsensusStateRequestPB) ProtoReflect

func (*GetConsensusStateRequestPB) Reset

func (x *GetConsensusStateRequestPB) Reset()

func (*GetConsensusStateRequestPB) String

func (x *GetConsensusStateRequestPB) String() string

func (*GetConsensusStateRequestPB) UnmarshalJSON

func (m *GetConsensusStateRequestPB) UnmarshalJSON(b []byte) error

type GetConsensusStateResponsePB

type GetConsensusStateResponsePB struct {
	Cstate *common.ConsensusStatePB `protobuf:"bytes,1,opt,name=cstate" json:"cstate,omitempty"`
	// A generic error message (such as tablet not found).
	Error *tserver.TabletServerErrorPB `protobuf:"bytes,2,opt,name=error" json:"error,omitempty"`
	// Allows returning the leader lease status in the same RPC. Useful for waiting for the leader
	// to be allowed to serve requests.
	LeaderLeaseStatus *LeaderLeaseStatus `` /* 144-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*GetConsensusStateResponsePB) Descriptor deprecated

func (*GetConsensusStateResponsePB) Descriptor() ([]byte, []int)

Deprecated: Use GetConsensusStateResponsePB.ProtoReflect.Descriptor instead.

func (*GetConsensusStateResponsePB) GetCstate

func (*GetConsensusStateResponsePB) GetError

func (*GetConsensusStateResponsePB) GetLeaderLeaseStatus

func (x *GetConsensusStateResponsePB) GetLeaderLeaseStatus() LeaderLeaseStatus

func (*GetConsensusStateResponsePB) MarshalJSON

func (m *GetConsensusStateResponsePB) MarshalJSON() ([]byte, error)

func (*GetConsensusStateResponsePB) ProtoMessage

func (*GetConsensusStateResponsePB) ProtoMessage()

func (*GetConsensusStateResponsePB) ProtoReflect

func (*GetConsensusStateResponsePB) Reset

func (x *GetConsensusStateResponsePB) Reset()

func (*GetConsensusStateResponsePB) String

func (x *GetConsensusStateResponsePB) String() string

func (*GetConsensusStateResponsePB) UnmarshalJSON

func (m *GetConsensusStateResponsePB) UnmarshalJSON(b []byte) error

type GetLastOpIdRequestPB

type GetLastOpIdRequestPB struct {

	// UUID of server this request is addressed to.
	DestUuid []byte `protobuf:"bytes,2,opt,name=dest_uuid,json=destUuid" json:"dest_uuid,omitempty"`
	// the id of the tablet
	TabletId []byte `protobuf:"bytes,1,req,name=tablet_id,json=tabletId" json:"tablet_id,omitempty"`
	// Whether to return the last-received or last-committed OpId.
	OpidType *OpIdType `protobuf:"varint,3,opt,name=opid_type,json=opidType,enum=yb.consensus.OpIdType,def=1" json:"opid_type,omitempty"`
	// contains filtered or unexported fields
}

func (*GetLastOpIdRequestPB) Descriptor deprecated

func (*GetLastOpIdRequestPB) Descriptor() ([]byte, []int)

Deprecated: Use GetLastOpIdRequestPB.ProtoReflect.Descriptor instead.

func (*GetLastOpIdRequestPB) GetDestUuid

func (x *GetLastOpIdRequestPB) GetDestUuid() []byte

func (*GetLastOpIdRequestPB) GetOpidType

func (x *GetLastOpIdRequestPB) GetOpidType() OpIdType

func (*GetLastOpIdRequestPB) GetTabletId

func (x *GetLastOpIdRequestPB) GetTabletId() []byte

func (*GetLastOpIdRequestPB) MarshalJSON

func (m *GetLastOpIdRequestPB) MarshalJSON() ([]byte, error)

func (*GetLastOpIdRequestPB) ProtoMessage

func (*GetLastOpIdRequestPB) ProtoMessage()

func (*GetLastOpIdRequestPB) ProtoReflect

func (x *GetLastOpIdRequestPB) ProtoReflect() protoreflect.Message

func (*GetLastOpIdRequestPB) Reset

func (x *GetLastOpIdRequestPB) Reset()

func (*GetLastOpIdRequestPB) String

func (x *GetLastOpIdRequestPB) String() string

func (*GetLastOpIdRequestPB) UnmarshalJSON

func (m *GetLastOpIdRequestPB) UnmarshalJSON(b []byte) error

type GetLastOpIdResponsePB

type GetLastOpIdResponsePB struct {
	Opid *util.OpIdPB `protobuf:"bytes,1,opt,name=opid" json:"opid,omitempty"`
	// A generic error message (such as tablet not found).
	Error *tserver.TabletServerErrorPB `protobuf:"bytes,2,opt,name=error" json:"error,omitempty"`
	// contains filtered or unexported fields
}

func (*GetLastOpIdResponsePB) Descriptor deprecated

func (*GetLastOpIdResponsePB) Descriptor() ([]byte, []int)

Deprecated: Use GetLastOpIdResponsePB.ProtoReflect.Descriptor instead.

func (*GetLastOpIdResponsePB) GetError

func (*GetLastOpIdResponsePB) GetOpid

func (x *GetLastOpIdResponsePB) GetOpid() *util.OpIdPB

func (*GetLastOpIdResponsePB) MarshalJSON

func (m *GetLastOpIdResponsePB) MarshalJSON() ([]byte, error)

func (*GetLastOpIdResponsePB) ProtoMessage

func (*GetLastOpIdResponsePB) ProtoMessage()

func (*GetLastOpIdResponsePB) ProtoReflect

func (x *GetLastOpIdResponsePB) ProtoReflect() protoreflect.Message

func (*GetLastOpIdResponsePB) Reset

func (x *GetLastOpIdResponsePB) Reset()

func (*GetLastOpIdResponsePB) String

func (x *GetLastOpIdResponsePB) String() string

func (*GetLastOpIdResponsePB) UnmarshalJSON

func (m *GetLastOpIdResponsePB) UnmarshalJSON(b []byte) error

type GetNodeInstanceRequestPB

type GetNodeInstanceRequestPB struct {
	// contains filtered or unexported fields
}

func (*GetNodeInstanceRequestPB) Descriptor deprecated

func (*GetNodeInstanceRequestPB) Descriptor() ([]byte, []int)

Deprecated: Use GetNodeInstanceRequestPB.ProtoReflect.Descriptor instead.

func (*GetNodeInstanceRequestPB) MarshalJSON

func (m *GetNodeInstanceRequestPB) MarshalJSON() ([]byte, error)

func (*GetNodeInstanceRequestPB) ProtoMessage

func (*GetNodeInstanceRequestPB) ProtoMessage()

func (*GetNodeInstanceRequestPB) ProtoReflect

func (x *GetNodeInstanceRequestPB) ProtoReflect() protoreflect.Message

func (*GetNodeInstanceRequestPB) Reset

func (x *GetNodeInstanceRequestPB) Reset()

func (*GetNodeInstanceRequestPB) String

func (x *GetNodeInstanceRequestPB) String() string

func (*GetNodeInstanceRequestPB) UnmarshalJSON

func (m *GetNodeInstanceRequestPB) UnmarshalJSON(b []byte) error

type GetNodeInstanceResponsePB

type GetNodeInstanceResponsePB struct {
	NodeInstance *common.NodeInstancePB       `protobuf:"bytes,1,opt,name=node_instance,json=nodeInstance" json:"node_instance,omitempty"`
	Registration *common.ServerRegistrationPB `protobuf:"bytes,2,opt,name=registration" json:"registration,omitempty"`
	// contains filtered or unexported fields
}

func (*GetNodeInstanceResponsePB) Descriptor deprecated

func (*GetNodeInstanceResponsePB) Descriptor() ([]byte, []int)

Deprecated: Use GetNodeInstanceResponsePB.ProtoReflect.Descriptor instead.

func (*GetNodeInstanceResponsePB) GetNodeInstance

func (x *GetNodeInstanceResponsePB) GetNodeInstance() *common.NodeInstancePB

func (*GetNodeInstanceResponsePB) GetRegistration

func (*GetNodeInstanceResponsePB) MarshalJSON

func (m *GetNodeInstanceResponsePB) MarshalJSON() ([]byte, error)

func (*GetNodeInstanceResponsePB) ProtoMessage

func (*GetNodeInstanceResponsePB) ProtoMessage()

func (*GetNodeInstanceResponsePB) ProtoReflect

func (*GetNodeInstanceResponsePB) Reset

func (x *GetNodeInstanceResponsePB) Reset()

func (*GetNodeInstanceResponsePB) String

func (x *GetNodeInstanceResponsePB) String() string

func (*GetNodeInstanceResponsePB) UnmarshalJSON

func (m *GetNodeInstanceResponsePB) UnmarshalJSON(b []byte) error

type HistoryCutoffPB

type HistoryCutoffPB struct {
	HistoryCutoff *uint64 `protobuf:"fixed64,1,opt,name=history_cutoff,json=historyCutoff" json:"history_cutoff,omitempty"`
	// contains filtered or unexported fields
}

Required by HistoryCutoffOperation.

func (*HistoryCutoffPB) Descriptor deprecated

func (*HistoryCutoffPB) Descriptor() ([]byte, []int)

Deprecated: Use HistoryCutoffPB.ProtoReflect.Descriptor instead.

func (*HistoryCutoffPB) GetHistoryCutoff

func (x *HistoryCutoffPB) GetHistoryCutoff() uint64

func (*HistoryCutoffPB) MarshalJSON

func (m *HistoryCutoffPB) MarshalJSON() ([]byte, error)

func (*HistoryCutoffPB) ProtoMessage

func (*HistoryCutoffPB) ProtoMessage()

func (*HistoryCutoffPB) ProtoReflect

func (x *HistoryCutoffPB) ProtoReflect() protoreflect.Message

func (*HistoryCutoffPB) Reset

func (x *HistoryCutoffPB) Reset()

func (*HistoryCutoffPB) String

func (x *HistoryCutoffPB) String() string

func (*HistoryCutoffPB) UnmarshalJSON

func (m *HistoryCutoffPB) UnmarshalJSON(b []byte) error

type LeaderElectionLostRequestPB

type LeaderElectionLostRequestPB struct {

	// UUID of server this request is addressed to.
	// It is originator_uuid from RunLeaderElectionRequestPB
	DestUuid []byte `protobuf:"bytes,1,opt,name=dest_uuid,json=destUuid" json:"dest_uuid,omitempty"`
	// the id of the tablet
	TabletId []byte `protobuf:"bytes,2,opt,name=tablet_id,json=tabletId" json:"tablet_id,omitempty"`
	// UUID of server that lost election
	ElectionLostByUuid []byte `protobuf:"bytes,3,opt,name=election_lost_by_uuid,json=electionLostByUuid" json:"election_lost_by_uuid,omitempty"`
	// contains filtered or unexported fields
}

func (*LeaderElectionLostRequestPB) Descriptor deprecated

func (*LeaderElectionLostRequestPB) Descriptor() ([]byte, []int)

Deprecated: Use LeaderElectionLostRequestPB.ProtoReflect.Descriptor instead.

func (*LeaderElectionLostRequestPB) GetDestUuid

func (x *LeaderElectionLostRequestPB) GetDestUuid() []byte

func (*LeaderElectionLostRequestPB) GetElectionLostByUuid

func (x *LeaderElectionLostRequestPB) GetElectionLostByUuid() []byte

func (*LeaderElectionLostRequestPB) GetTabletId

func (x *LeaderElectionLostRequestPB) GetTabletId() []byte

func (*LeaderElectionLostRequestPB) MarshalJSON

func (m *LeaderElectionLostRequestPB) MarshalJSON() ([]byte, error)

func (*LeaderElectionLostRequestPB) ProtoMessage

func (*LeaderElectionLostRequestPB) ProtoMessage()

func (*LeaderElectionLostRequestPB) ProtoReflect

func (*LeaderElectionLostRequestPB) Reset

func (x *LeaderElectionLostRequestPB) Reset()

func (*LeaderElectionLostRequestPB) String

func (x *LeaderElectionLostRequestPB) String() string

func (*LeaderElectionLostRequestPB) UnmarshalJSON

func (m *LeaderElectionLostRequestPB) UnmarshalJSON(b []byte) error

type LeaderElectionLostResponsePB

type LeaderElectionLostResponsePB struct {

	// A generic error message (such as tablet not found).
	Error *tserver.TabletServerErrorPB `protobuf:"bytes,1,opt,name=error" json:"error,omitempty"`
	// contains filtered or unexported fields
}

func (*LeaderElectionLostResponsePB) Descriptor deprecated

func (*LeaderElectionLostResponsePB) Descriptor() ([]byte, []int)

Deprecated: Use LeaderElectionLostResponsePB.ProtoReflect.Descriptor instead.

func (*LeaderElectionLostResponsePB) GetError

func (*LeaderElectionLostResponsePB) MarshalJSON

func (m *LeaderElectionLostResponsePB) MarshalJSON() ([]byte, error)

func (*LeaderElectionLostResponsePB) ProtoMessage

func (*LeaderElectionLostResponsePB) ProtoMessage()

func (*LeaderElectionLostResponsePB) ProtoReflect

func (*LeaderElectionLostResponsePB) Reset

func (x *LeaderElectionLostResponsePB) Reset()

func (*LeaderElectionLostResponsePB) String

func (*LeaderElectionLostResponsePB) UnmarshalJSON

func (m *LeaderElectionLostResponsePB) UnmarshalJSON(b []byte) error

type LeaderLeaseStatus

type LeaderLeaseStatus int32
const (
	LeaderLeaseStatus_HAS_LEASE                    LeaderLeaseStatus = 0
	LeaderLeaseStatus_OLD_LEADER_MAY_HAVE_LEASE    LeaderLeaseStatus = 1
	LeaderLeaseStatus_NO_MAJORITY_REPLICATED_LEASE LeaderLeaseStatus = 2
)

func (LeaderLeaseStatus) Descriptor

func (LeaderLeaseStatus) Enum

func (LeaderLeaseStatus) EnumDescriptor deprecated

func (LeaderLeaseStatus) EnumDescriptor() ([]byte, []int)

Deprecated: Use LeaderLeaseStatus.Descriptor instead.

func (LeaderLeaseStatus) Number

func (LeaderLeaseStatus) String

func (x LeaderLeaseStatus) String() string

func (LeaderLeaseStatus) Type

func (*LeaderLeaseStatus) UnmarshalJSON deprecated

func (x *LeaderLeaseStatus) UnmarshalJSON(b []byte) error

Deprecated: Do not use.

type LeaderStepDownRequestPB

type LeaderStepDownRequestPB struct {

	// UUID of server this request is addressed to.
	DestUuid []byte `protobuf:"bytes,2,opt,name=dest_uuid,json=destUuid" json:"dest_uuid,omitempty"`
	// The id of the tablet.
	TabletId []byte `protobuf:"bytes,1,req,name=tablet_id,json=tabletId" json:"tablet_id,omitempty"`
	// UUID of the server that should run the election to become the new leader.
	NewLeaderUuid []byte `protobuf:"bytes,3,opt,name=new_leader_uuid,json=newLeaderUuid" json:"new_leader_uuid,omitempty"`
	// Used in tests to ignore check for new leader conditions.
	ForceStepDown *bool `protobuf:"varint,4,opt,name=force_step_down,json=forceStepDown" json:"force_step_down,omitempty"`
	// If new_leader_uuid is not specified, the current leader will attempt
	// to gracefully transfer leadership to another peer. Setting this flag
	// disables that behavior.
	DisableGracefulTransition *bool `` /* 132-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*LeaderStepDownRequestPB) Descriptor deprecated

func (*LeaderStepDownRequestPB) Descriptor() ([]byte, []int)

Deprecated: Use LeaderStepDownRequestPB.ProtoReflect.Descriptor instead.

func (*LeaderStepDownRequestPB) GetDestUuid

func (x *LeaderStepDownRequestPB) GetDestUuid() []byte

func (*LeaderStepDownRequestPB) GetDisableGracefulTransition

func (x *LeaderStepDownRequestPB) GetDisableGracefulTransition() bool

func (*LeaderStepDownRequestPB) GetForceStepDown

func (x *LeaderStepDownRequestPB) GetForceStepDown() bool

func (*LeaderStepDownRequestPB) GetNewLeaderUuid

func (x *LeaderStepDownRequestPB) GetNewLeaderUuid() []byte

func (*LeaderStepDownRequestPB) GetTabletId

func (x *LeaderStepDownRequestPB) GetTabletId() []byte

func (*LeaderStepDownRequestPB) MarshalJSON

func (m *LeaderStepDownRequestPB) MarshalJSON() ([]byte, error)

func (*LeaderStepDownRequestPB) ProtoMessage

func (*LeaderStepDownRequestPB) ProtoMessage()

func (*LeaderStepDownRequestPB) ProtoReflect

func (x *LeaderStepDownRequestPB) ProtoReflect() protoreflect.Message

func (*LeaderStepDownRequestPB) Reset

func (x *LeaderStepDownRequestPB) Reset()

func (*LeaderStepDownRequestPB) String

func (x *LeaderStepDownRequestPB) String() string

func (*LeaderStepDownRequestPB) UnmarshalJSON

func (m *LeaderStepDownRequestPB) UnmarshalJSON(b []byte) error

type LeaderStepDownResponsePB

type LeaderStepDownResponsePB struct {

	// A generic error message (such as tablet not found).
	Error *tserver.TabletServerErrorPB `protobuf:"bytes,1,opt,name=error" json:"error,omitempty"`
	// Time in milliseconds since previous election failure with the same intended ("protege") leader.
	// This is used to track the remaining amount of time during which the load balancer should not
	// attempt to ask (any) leader of this tablet to step down in favor of the same peer.
	TimeSinceElectionFailureMs *int64 `` /* 139-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*LeaderStepDownResponsePB) Descriptor deprecated

func (*LeaderStepDownResponsePB) Descriptor() ([]byte, []int)

Deprecated: Use LeaderStepDownResponsePB.ProtoReflect.Descriptor instead.

func (*LeaderStepDownResponsePB) GetError

func (*LeaderStepDownResponsePB) GetTimeSinceElectionFailureMs

func (x *LeaderStepDownResponsePB) GetTimeSinceElectionFailureMs() int64

func (*LeaderStepDownResponsePB) MarshalJSON

func (m *LeaderStepDownResponsePB) MarshalJSON() ([]byte, error)

func (*LeaderStepDownResponsePB) ProtoMessage

func (*LeaderStepDownResponsePB) ProtoMessage()

func (*LeaderStepDownResponsePB) ProtoReflect

func (x *LeaderStepDownResponsePB) ProtoReflect() protoreflect.Message

func (*LeaderStepDownResponsePB) Reset

func (x *LeaderStepDownResponsePB) Reset()

func (*LeaderStepDownResponsePB) String

func (x *LeaderStepDownResponsePB) String() string

func (*LeaderStepDownResponsePB) UnmarshalJSON

func (m *LeaderStepDownResponsePB) UnmarshalJSON(b []byte) error

type LogEntryBatchPB

type LogEntryBatchPB struct {
	Entry         []*LogEntryPB `protobuf:"bytes,1,rep,name=entry" json:"entry,omitempty"`
	CommittedOpId *util.OpIdPB  `protobuf:"bytes,2,opt,name=committed_op_id,json=committedOpId" json:"committed_op_id,omitempty"`
	// Time when this batch was appended, this time is monotonically increase,
	// and restart safe. I.e. first batch after restart will have time greater than or equal to
	// time of last batch added before restart.
	MonoTime *uint64 `protobuf:"varint,3,opt,name=mono_time,json=monoTime" json:"mono_time,omitempty"`
	// contains filtered or unexported fields
}

A batch of entries in the WAL.

func (*LogEntryBatchPB) Descriptor deprecated

func (*LogEntryBatchPB) Descriptor() ([]byte, []int)

Deprecated: Use LogEntryBatchPB.ProtoReflect.Descriptor instead.

func (*LogEntryBatchPB) GetCommittedOpId

func (x *LogEntryBatchPB) GetCommittedOpId() *util.OpIdPB

func (*LogEntryBatchPB) GetEntry

func (x *LogEntryBatchPB) GetEntry() []*LogEntryPB

func (*LogEntryBatchPB) GetMonoTime

func (x *LogEntryBatchPB) GetMonoTime() uint64

func (*LogEntryBatchPB) MarshalJSON

func (m *LogEntryBatchPB) MarshalJSON() ([]byte, error)

func (*LogEntryBatchPB) ProtoMessage

func (*LogEntryBatchPB) ProtoMessage()

func (*LogEntryBatchPB) ProtoReflect

func (x *LogEntryBatchPB) ProtoReflect() protoreflect.Message

func (*LogEntryBatchPB) Reset

func (x *LogEntryBatchPB) Reset()

func (*LogEntryBatchPB) String

func (x *LogEntryBatchPB) String() string

func (*LogEntryBatchPB) UnmarshalJSON

func (m *LogEntryBatchPB) UnmarshalJSON(b []byte) error

type LogEntryPB

type LogEntryPB struct {
	Type      *LogEntryTypePB `protobuf:"varint,1,req,name=type,enum=yb.log.LogEntryTypePB" json:"type,omitempty"`
	Replicate *ReplicateMsg   `protobuf:"bytes,2,opt,name=replicate" json:"replicate,omitempty"`
	// contains filtered or unexported fields
}

An entry in the WAL/state machine log.

func (*LogEntryPB) Descriptor deprecated

func (*LogEntryPB) Descriptor() ([]byte, []int)

Deprecated: Use LogEntryPB.ProtoReflect.Descriptor instead.

func (*LogEntryPB) GetReplicate

func (x *LogEntryPB) GetReplicate() *ReplicateMsg

func (*LogEntryPB) GetType

func (x *LogEntryPB) GetType() LogEntryTypePB

func (*LogEntryPB) MarshalJSON

func (m *LogEntryPB) MarshalJSON() ([]byte, error)

func (*LogEntryPB) ProtoMessage

func (*LogEntryPB) ProtoMessage()

func (*LogEntryPB) ProtoReflect

func (x *LogEntryPB) ProtoReflect() protoreflect.Message

func (*LogEntryPB) Reset

func (x *LogEntryPB) Reset()

func (*LogEntryPB) String

func (x *LogEntryPB) String() string

func (*LogEntryPB) UnmarshalJSON

func (m *LogEntryPB) UnmarshalJSON(b []byte) error

type LogEntryTypePB

type LogEntryTypePB int32

Types of log entries.

const (
	LogEntryTypePB_UNKNOWN   LogEntryTypePB = 0
	LogEntryTypePB_REPLICATE LogEntryTypePB = 1
	// Marker entry for dummy log messages. These will never end up in the log, just serve the purpose
	// of making sure that all entries up to the FLUSH_MARKER entry are flushed.
	LogEntryTypePB_FLUSH_MARKER LogEntryTypePB = 999
)

func (LogEntryTypePB) Descriptor

func (LogEntryTypePB) Enum

func (x LogEntryTypePB) Enum() *LogEntryTypePB

func (LogEntryTypePB) EnumDescriptor deprecated

func (LogEntryTypePB) EnumDescriptor() ([]byte, []int)

Deprecated: Use LogEntryTypePB.Descriptor instead.

func (LogEntryTypePB) Number

func (LogEntryTypePB) String

func (x LogEntryTypePB) String() string

func (LogEntryTypePB) Type

func (*LogEntryTypePB) UnmarshalJSON deprecated

func (x *LogEntryTypePB) UnmarshalJSON(b []byte) error

Deprecated: Do not use.

type LogSegmentFooterPB

type LogSegmentFooterPB struct {

	// The total number of operations inside this segment.
	NumEntries *int64 `protobuf:"varint,1,req,name=num_entries,json=numEntries" json:"num_entries,omitempty"`
	// The minimum and maximum index of a REPLICATE message in this segment.
	// NOTE: because of log truncation, the min/max are not necessarily the first/last!  For example,
	// a log segment may contain entries "1.5, 1.6, 2.3, 3.3" due to multiple term changes.
	//
	// Because it's possible for a segment to have no REPLICATE messages in it, we set the default
	// to -1 for these fields to avoid accidentally reading 0, which might look like a real log index.
	MinReplicateIndex *int64 `protobuf:"varint,2,opt,name=min_replicate_index,json=minReplicateIndex,def=-1" json:"min_replicate_index,omitempty"`
	MaxReplicateIndex *int64 `protobuf:"varint,3,opt,name=max_replicate_index,json=maxReplicateIndex,def=-1" json:"max_replicate_index,omitempty"`
	// The time (microseconds since epoch) when this segment was closed.
	// NOTE: in configurations where --skip_wal_rewrite=false is specified, log segments are rewritten
	// during bootstrap, so this field will be reset to the time of the bootstrap in each log segment
	// on a newly-restarted server, rather than copied over from the old log segments.
	CloseTimestampMicros *int64 `protobuf:"varint,4,opt,name=close_timestamp_micros,json=closeTimestampMicros" json:"close_timestamp_micros,omitempty"`
	// contains filtered or unexported fields
}

A footer for a log segment.

Log segment footers might not be present (e.g. if the server crashed) so they should contain no information that cannot be obtained by actually reading the entries in the log.

We use the footer to keep sparse index entries mapping op_id->offset (right now we just keep the first entry with an id in the log).

func (*LogSegmentFooterPB) Descriptor deprecated

func (*LogSegmentFooterPB) Descriptor() ([]byte, []int)

Deprecated: Use LogSegmentFooterPB.ProtoReflect.Descriptor instead.

func (*LogSegmentFooterPB) GetCloseTimestampMicros

func (x *LogSegmentFooterPB) GetCloseTimestampMicros() int64

func (*LogSegmentFooterPB) GetMaxReplicateIndex

func (x *LogSegmentFooterPB) GetMaxReplicateIndex() int64

func (*LogSegmentFooterPB) GetMinReplicateIndex

func (x *LogSegmentFooterPB) GetMinReplicateIndex() int64

func (*LogSegmentFooterPB) GetNumEntries

func (x *LogSegmentFooterPB) GetNumEntries() int64

func (*LogSegmentFooterPB) MarshalJSON

func (m *LogSegmentFooterPB) MarshalJSON() ([]byte, error)

func (*LogSegmentFooterPB) ProtoMessage

func (*LogSegmentFooterPB) ProtoMessage()

func (*LogSegmentFooterPB) ProtoReflect

func (x *LogSegmentFooterPB) ProtoReflect() protoreflect.Message

func (*LogSegmentFooterPB) Reset

func (x *LogSegmentFooterPB) Reset()

func (*LogSegmentFooterPB) String

func (x *LogSegmentFooterPB) String() string

func (*LogSegmentFooterPB) UnmarshalJSON

func (m *LogSegmentFooterPB) UnmarshalJSON(b []byte) error

type LogSegmentHeaderPB

type LogSegmentHeaderPB struct {

	// Log format major version.
	MajorVersion *uint32 `protobuf:"varint,1,req,name=major_version,json=majorVersion" json:"major_version,omitempty"`
	// Log format minor version.
	MinorVersion *uint32 `protobuf:"varint,2,req,name=minor_version,json=minorVersion" json:"minor_version,omitempty"`
	// The ID of the tablet this WAL segment stores entries for.
	TabletId []byte `protobuf:"bytes,5,req,name=tablet_id,json=tabletId" json:"tablet_id,omitempty"`
	// The tablet-specific sequence number of this WAL segment.
	SequenceNumber *uint64 `protobuf:"varint,6,req,name=sequence_number,json=sequenceNumber" json:"sequence_number,omitempty"`
	// Schema used when appending entries to this log, and its version.
	Schema        *common.SchemaPB `protobuf:"bytes,7,req,name=schema" json:"schema,omitempty"`
	SchemaVersion *uint32          `protobuf:"varint,8,opt,name=schema_version,json=schemaVersion" json:"schema_version,omitempty"`
	// contains filtered or unexported fields
}

A header for a log segment.

func (*LogSegmentHeaderPB) Descriptor deprecated

func (*LogSegmentHeaderPB) Descriptor() ([]byte, []int)

Deprecated: Use LogSegmentHeaderPB.ProtoReflect.Descriptor instead.

func (*LogSegmentHeaderPB) GetMajorVersion

func (x *LogSegmentHeaderPB) GetMajorVersion() uint32

func (*LogSegmentHeaderPB) GetMinorVersion

func (x *LogSegmentHeaderPB) GetMinorVersion() uint32

func (*LogSegmentHeaderPB) GetSchema

func (x *LogSegmentHeaderPB) GetSchema() *common.SchemaPB

func (*LogSegmentHeaderPB) GetSchemaVersion

func (x *LogSegmentHeaderPB) GetSchemaVersion() uint32

func (*LogSegmentHeaderPB) GetSequenceNumber

func (x *LogSegmentHeaderPB) GetSequenceNumber() uint64

func (*LogSegmentHeaderPB) GetTabletId

func (x *LogSegmentHeaderPB) GetTabletId() []byte

func (*LogSegmentHeaderPB) MarshalJSON

func (m *LogSegmentHeaderPB) MarshalJSON() ([]byte, error)

func (*LogSegmentHeaderPB) ProtoMessage

func (*LogSegmentHeaderPB) ProtoMessage()

func (*LogSegmentHeaderPB) ProtoReflect

func (x *LogSegmentHeaderPB) ProtoReflect() protoreflect.Message

func (*LogSegmentHeaderPB) Reset

func (x *LogSegmentHeaderPB) Reset()

func (*LogSegmentHeaderPB) String

func (x *LogSegmentHeaderPB) String() string

func (*LogSegmentHeaderPB) UnmarshalJSON

func (m *LogSegmentHeaderPB) UnmarshalJSON(b []byte) error

type NoOpRequestPB

type NoOpRequestPB struct {

	// Allows to set a dummy payload, for tests.
	PayloadForTests []byte `protobuf:"bytes,1,opt,name=payload_for_tests,json=payloadForTests" json:"payload_for_tests,omitempty"`
	// contains filtered or unexported fields
}

NoOp requests, mostly used in tests.

func (*NoOpRequestPB) Descriptor deprecated

func (*NoOpRequestPB) Descriptor() ([]byte, []int)

Deprecated: Use NoOpRequestPB.ProtoReflect.Descriptor instead.

func (*NoOpRequestPB) GetPayloadForTests

func (x *NoOpRequestPB) GetPayloadForTests() []byte

func (*NoOpRequestPB) MarshalJSON

func (m *NoOpRequestPB) MarshalJSON() ([]byte, error)

func (*NoOpRequestPB) ProtoMessage

func (*NoOpRequestPB) ProtoMessage()

func (*NoOpRequestPB) ProtoReflect

func (x *NoOpRequestPB) ProtoReflect() protoreflect.Message

func (*NoOpRequestPB) Reset

func (x *NoOpRequestPB) Reset()

func (*NoOpRequestPB) String

func (x *NoOpRequestPB) String() string

func (*NoOpRequestPB) UnmarshalJSON

func (m *NoOpRequestPB) UnmarshalJSON(b []byte) error

type NoOpResponsePB

type NoOpResponsePB struct {

	// Allows to set a dummy payload, for tests.
	PayloadForTests []byte `protobuf:"bytes,1,opt,name=payload_for_tests,json=payloadForTests" json:"payload_for_tests,omitempty"`
	// contains filtered or unexported fields
}

NoOp responses, mostly used in tests.

func (*NoOpResponsePB) Descriptor deprecated

func (*NoOpResponsePB) Descriptor() ([]byte, []int)

Deprecated: Use NoOpResponsePB.ProtoReflect.Descriptor instead.

func (*NoOpResponsePB) GetPayloadForTests

func (x *NoOpResponsePB) GetPayloadForTests() []byte

func (*NoOpResponsePB) MarshalJSON

func (m *NoOpResponsePB) MarshalJSON() ([]byte, error)

func (*NoOpResponsePB) ProtoMessage

func (*NoOpResponsePB) ProtoMessage()

func (*NoOpResponsePB) ProtoReflect

func (x *NoOpResponsePB) ProtoReflect() protoreflect.Message

func (*NoOpResponsePB) Reset

func (x *NoOpResponsePB) Reset()

func (*NoOpResponsePB) String

func (x *NoOpResponsePB) String() string

func (*NoOpResponsePB) UnmarshalJSON

func (m *NoOpResponsePB) UnmarshalJSON(b []byte) error

type OpIdType

type OpIdType int32
const (
	OpIdType_UNKNOWN_OPID_TYPE OpIdType = 0
	OpIdType_RECEIVED_OPID     OpIdType = 1
	OpIdType_COMMITTED_OPID    OpIdType = 2
)

func (OpIdType) Descriptor

func (OpIdType) Descriptor() protoreflect.EnumDescriptor

func (OpIdType) Enum

func (x OpIdType) Enum() *OpIdType

func (OpIdType) EnumDescriptor deprecated

func (OpIdType) EnumDescriptor() ([]byte, []int)

Deprecated: Use OpIdType.Descriptor instead.

func (OpIdType) Number

func (x OpIdType) Number() protoreflect.EnumNumber

func (OpIdType) String

func (x OpIdType) String() string

func (OpIdType) Type

func (*OpIdType) UnmarshalJSON deprecated

func (x *OpIdType) UnmarshalJSON(b []byte) error

Deprecated: Do not use.

type OperationStatusPB

type OperationStatusPB struct {
	OpId          *util.OpIdPB   `protobuf:"bytes,1,req,name=op_id,json=opId" json:"op_id,omitempty"`
	OperationType *OperationType `` /* 126-byte string literal not displayed */
	// Time the transaction has been in flight.
	RunningForMicros *int64 `protobuf:"varint,3,req,name=running_for_micros,json=runningForMicros" json:"running_for_micros,omitempty"`
	// Quick human-readable description (e.g., ToString() output).
	Description *string `protobuf:"bytes,4,req,name=description" json:"description,omitempty"`
	// If tracing is enabled when viewing the transaction, the trace
	// buffer is copied here.
	TraceBuffer *string `protobuf:"bytes,6,opt,name=trace_buffer,json=traceBuffer" json:"trace_buffer,omitempty"`
	// contains filtered or unexported fields
}

A message reflecting the status of an in-flight transaction.

func (*OperationStatusPB) Descriptor deprecated

func (*OperationStatusPB) Descriptor() ([]byte, []int)

Deprecated: Use OperationStatusPB.ProtoReflect.Descriptor instead.

func (*OperationStatusPB) GetDescription

func (x *OperationStatusPB) GetDescription() string

func (*OperationStatusPB) GetOpId

func (x *OperationStatusPB) GetOpId() *util.OpIdPB

func (*OperationStatusPB) GetOperationType

func (x *OperationStatusPB) GetOperationType() OperationType

func (*OperationStatusPB) GetRunningForMicros

func (x *OperationStatusPB) GetRunningForMicros() int64

func (*OperationStatusPB) GetTraceBuffer

func (x *OperationStatusPB) GetTraceBuffer() string

func (*OperationStatusPB) MarshalJSON

func (m *OperationStatusPB) MarshalJSON() ([]byte, error)

func (*OperationStatusPB) ProtoMessage

func (*OperationStatusPB) ProtoMessage()

func (*OperationStatusPB) ProtoReflect

func (x *OperationStatusPB) ProtoReflect() protoreflect.Message

func (*OperationStatusPB) Reset

func (x *OperationStatusPB) Reset()

func (*OperationStatusPB) String

func (x *OperationStatusPB) String() string

func (*OperationStatusPB) UnmarshalJSON

func (m *OperationStatusPB) UnmarshalJSON(b []byte) error

type OperationType

type OperationType int32

The types of operations that need a commit message, i.e. those that require at least one round of the consensus algorithm.

const (
	OperationType_UNKNOWN_OP            OperationType = 0
	OperationType_NO_OP                 OperationType = 1
	OperationType_WRITE_OP              OperationType = 3
	OperationType_CHANGE_METADATA_OP    OperationType = 4
	OperationType_CHANGE_CONFIG_OP      OperationType = 5
	OperationType_UPDATE_TRANSACTION_OP OperationType = 6
	OperationType_SNAPSHOT_OP           OperationType = 7
	OperationType_TRUNCATE_OP           OperationType = 8
	OperationType_HISTORY_CUTOFF_OP     OperationType = 9
	OperationType_SPLIT_OP              OperationType = 10
)

func (OperationType) Descriptor

func (OperationType) Enum

func (x OperationType) Enum() *OperationType

func (OperationType) EnumDescriptor deprecated

func (OperationType) EnumDescriptor() ([]byte, []int)

Deprecated: Use OperationType.Descriptor instead.

func (OperationType) Number

func (OperationType) String

func (x OperationType) String() string

func (OperationType) Type

func (*OperationType) UnmarshalJSON deprecated

func (x *OperationType) UnmarshalJSON(b []byte) error

Deprecated: Do not use.

type PerOpErrorPB

type PerOpErrorPB struct {

	// The id of the operation that failed in the other peer.
	Id *util.OpIdPB `protobuf:"bytes,1,req,name=id" json:"id,omitempty"`
	// The Status explaining why the operation failed.
	Status *common.AppStatusPB `protobuf:"bytes,2,req,name=status" json:"status,omitempty"`
	// contains filtered or unexported fields
}

func (*PerOpErrorPB) Descriptor deprecated

func (*PerOpErrorPB) Descriptor() ([]byte, []int)

Deprecated: Use PerOpErrorPB.ProtoReflect.Descriptor instead.

func (*PerOpErrorPB) GetId

func (x *PerOpErrorPB) GetId() *util.OpIdPB

func (*PerOpErrorPB) GetStatus

func (x *PerOpErrorPB) GetStatus() *common.AppStatusPB

func (*PerOpErrorPB) MarshalJSON

func (m *PerOpErrorPB) MarshalJSON() ([]byte, error)

func (*PerOpErrorPB) ProtoMessage

func (*PerOpErrorPB) ProtoMessage()

func (*PerOpErrorPB) ProtoReflect

func (x *PerOpErrorPB) ProtoReflect() protoreflect.Message

func (*PerOpErrorPB) Reset

func (x *PerOpErrorPB) Reset()

func (*PerOpErrorPB) String

func (x *PerOpErrorPB) String() string

func (*PerOpErrorPB) UnmarshalJSON

func (m *PerOpErrorPB) UnmarshalJSON(b []byte) error

type ReplicateMsg

type ReplicateMsg struct {
	Id *util.OpIdPB `protobuf:"bytes,1,req,name=id" json:"id,omitempty"`
	// The hybrid time assigned to this message.
	HybridTime *uint64 `protobuf:"fixed64,2,req,name=hybrid_time,json=hybridTime" json:"hybrid_time,omitempty"`
	// A counter that is forever increasing in a tablet (like hybrid time). Used for list indexing.
	MonotonicCounter      *int64                             `protobuf:"varint,9,opt,name=monotonic_counter,json=monotonicCounter" json:"monotonic_counter,omitempty"`
	OpType                *OperationType                     `protobuf:"varint,4,req,name=op_type,json=opType,enum=yb.consensus.OperationType" json:"op_type,omitempty"`
	WriteRequest          *tserver.WriteRequestPB            `protobuf:"bytes,5,opt,name=write_request,json=writeRequest" json:"write_request,omitempty"`
	ChangeMetadataRequest *tserver.ChangeMetadataRequestPB   `protobuf:"bytes,6,opt,name=change_metadata_request,json=changeMetadataRequest" json:"change_metadata_request,omitempty"`
	TransactionState      *tserver.TransactionStatePB        `protobuf:"bytes,10,opt,name=transaction_state,json=transactionState" json:"transaction_state,omitempty"`
	SnapshotRequest       *tserver.TabletSnapshotOpRequestPB `protobuf:"bytes,11,opt,name=snapshot_request,json=snapshotRequest" json:"snapshot_request,omitempty"`
	TruncateRequest       *tserver.TruncateRequestPB         `protobuf:"bytes,12,opt,name=truncate_request,json=truncateRequest" json:"truncate_request,omitempty"`
	SplitRequest          *tserver.SplitTabletRequestPB      `protobuf:"bytes,14,opt,name=split_request,json=splitRequest" json:"split_request,omitempty"`
	ChangeConfigRecord    *ChangeConfigRecordPB              `protobuf:"bytes,7,opt,name=change_config_record,json=changeConfigRecord" json:"change_config_record,omitempty"`
	HistoryCutoff         *HistoryCutoffPB                   `protobuf:"bytes,13,opt,name=history_cutoff,json=historyCutoff" json:"history_cutoff,omitempty"`
	// The Raft operation ID known to the leader to be committed at the time this message was sent.
	// This is used during tablet bootstrap for RocksDB-backed tables.
	CommittedOpId *util.OpIdPB   `protobuf:"bytes,8,opt,name=committed_op_id,json=committedOpId" json:"committed_op_id,omitempty"`
	NoopRequest   *NoOpRequestPB `protobuf:"bytes,999,opt,name=noop_request,json=noopRequest" json:"noop_request,omitempty"`
	// contains filtered or unexported fields
}

A Replicate message, sent to replicas by leader to indicate this operation must be stored in the write-ahead log.

func (*ReplicateMsg) Descriptor deprecated

func (*ReplicateMsg) Descriptor() ([]byte, []int)

Deprecated: Use ReplicateMsg.ProtoReflect.Descriptor instead.

func (*ReplicateMsg) GetChangeConfigRecord

func (x *ReplicateMsg) GetChangeConfigRecord() *ChangeConfigRecordPB

func (*ReplicateMsg) GetChangeMetadataRequest

func (x *ReplicateMsg) GetChangeMetadataRequest() *tserver.ChangeMetadataRequestPB

func (*ReplicateMsg) GetCommittedOpId

func (x *ReplicateMsg) GetCommittedOpId() *util.OpIdPB

func (*ReplicateMsg) GetHistoryCutoff

func (x *ReplicateMsg) GetHistoryCutoff() *HistoryCutoffPB

func (*ReplicateMsg) GetHybridTime

func (x *ReplicateMsg) GetHybridTime() uint64

func (*ReplicateMsg) GetId

func (x *ReplicateMsg) GetId() *util.OpIdPB

func (*ReplicateMsg) GetMonotonicCounter

func (x *ReplicateMsg) GetMonotonicCounter() int64

func (*ReplicateMsg) GetNoopRequest

func (x *ReplicateMsg) GetNoopRequest() *NoOpRequestPB

func (*ReplicateMsg) GetOpType

func (x *ReplicateMsg) GetOpType() OperationType

func (*ReplicateMsg) GetSnapshotRequest

func (x *ReplicateMsg) GetSnapshotRequest() *tserver.TabletSnapshotOpRequestPB

func (*ReplicateMsg) GetSplitRequest

func (x *ReplicateMsg) GetSplitRequest() *tserver.SplitTabletRequestPB

func (*ReplicateMsg) GetTransactionState

func (x *ReplicateMsg) GetTransactionState() *tserver.TransactionStatePB

func (*ReplicateMsg) GetTruncateRequest

func (x *ReplicateMsg) GetTruncateRequest() *tserver.TruncateRequestPB

func (*ReplicateMsg) GetWriteRequest

func (x *ReplicateMsg) GetWriteRequest() *tserver.WriteRequestPB

func (*ReplicateMsg) MarshalJSON

func (m *ReplicateMsg) MarshalJSON() ([]byte, error)

func (*ReplicateMsg) ProtoMessage

func (*ReplicateMsg) ProtoMessage()

func (*ReplicateMsg) ProtoReflect

func (x *ReplicateMsg) ProtoReflect() protoreflect.Message

func (*ReplicateMsg) Reset

func (x *ReplicateMsg) Reset()

func (*ReplicateMsg) String

func (x *ReplicateMsg) String() string

func (*ReplicateMsg) UnmarshalJSON

func (m *ReplicateMsg) UnmarshalJSON(b []byte) error

type RunLeaderElectionRequestPB

type RunLeaderElectionRequestPB struct {

	// UUID of server this request is addressed to.
	DestUuid []byte `protobuf:"bytes,2,opt,name=dest_uuid,json=destUuid" json:"dest_uuid,omitempty"`
	// the id of the tablet
	TabletId []byte `protobuf:"bytes,1,req,name=tablet_id,json=tabletId" json:"tablet_id,omitempty"`
	// The id of the last operation the current leader has committed to its log.
	// When specified, the peer must wait till the operation has been committed
	// to its log before starting the election to be qualified as a leader.
	CommittedIndex *util.OpIdPB `protobuf:"bytes,3,opt,name=committed_index,json=committedIndex" json:"committed_index,omitempty"`
	// UUID of old leader, that requested this election.
	// If we lost election, we would notify originator about this fact.
	// So it would reset its withold timeout and try to become a leader again.
	OriginatorUuid      []byte `protobuf:"bytes,4,opt,name=originator_uuid,json=originatorUuid" json:"originator_uuid,omitempty"`
	SuppressVoteRequest *bool  `protobuf:"varint,5,opt,name=suppress_vote_request,json=suppressVoteRequest" json:"suppress_vote_request,omitempty"`
	InitialElection     *bool  `protobuf:"varint,6,opt,name=initial_election,json=initialElection" json:"initial_election,omitempty"`
	// contains filtered or unexported fields
}

Message that makes the local peer run leader election to be elected leader. Assumes that a tablet with 'tablet_id' exists.

func (*RunLeaderElectionRequestPB) Descriptor deprecated

func (*RunLeaderElectionRequestPB) Descriptor() ([]byte, []int)

Deprecated: Use RunLeaderElectionRequestPB.ProtoReflect.Descriptor instead.

func (*RunLeaderElectionRequestPB) GetCommittedIndex

func (x *RunLeaderElectionRequestPB) GetCommittedIndex() *util.OpIdPB

func (*RunLeaderElectionRequestPB) GetDestUuid

func (x *RunLeaderElectionRequestPB) GetDestUuid() []byte

func (*RunLeaderElectionRequestPB) GetInitialElection

func (x *RunLeaderElectionRequestPB) GetInitialElection() bool

func (*RunLeaderElectionRequestPB) GetOriginatorUuid

func (x *RunLeaderElectionRequestPB) GetOriginatorUuid() []byte

func (*RunLeaderElectionRequestPB) GetSuppressVoteRequest

func (x *RunLeaderElectionRequestPB) GetSuppressVoteRequest() bool

func (*RunLeaderElectionRequestPB) GetTabletId

func (x *RunLeaderElectionRequestPB) GetTabletId() []byte

func (*RunLeaderElectionRequestPB) MarshalJSON

func (m *RunLeaderElectionRequestPB) MarshalJSON() ([]byte, error)

func (*RunLeaderElectionRequestPB) ProtoMessage

func (*RunLeaderElectionRequestPB) ProtoMessage()

func (*RunLeaderElectionRequestPB) ProtoReflect

func (*RunLeaderElectionRequestPB) Reset

func (x *RunLeaderElectionRequestPB) Reset()

func (*RunLeaderElectionRequestPB) String

func (x *RunLeaderElectionRequestPB) String() string

func (*RunLeaderElectionRequestPB) UnmarshalJSON

func (m *RunLeaderElectionRequestPB) UnmarshalJSON(b []byte) error

type RunLeaderElectionResponsePB

type RunLeaderElectionResponsePB struct {

	// A generic error message (such as tablet not found).
	Error *tserver.TabletServerErrorPB `protobuf:"bytes,1,opt,name=error" json:"error,omitempty"`
	// contains filtered or unexported fields
}

func (*RunLeaderElectionResponsePB) Descriptor deprecated

func (*RunLeaderElectionResponsePB) Descriptor() ([]byte, []int)

Deprecated: Use RunLeaderElectionResponsePB.ProtoReflect.Descriptor instead.

func (*RunLeaderElectionResponsePB) GetError

func (*RunLeaderElectionResponsePB) MarshalJSON

func (m *RunLeaderElectionResponsePB) MarshalJSON() ([]byte, error)

func (*RunLeaderElectionResponsePB) ProtoMessage

func (*RunLeaderElectionResponsePB) ProtoMessage()

func (*RunLeaderElectionResponsePB) ProtoReflect

func (*RunLeaderElectionResponsePB) Reset

func (x *RunLeaderElectionResponsePB) Reset()

func (*RunLeaderElectionResponsePB) String

func (x *RunLeaderElectionResponsePB) String() string

func (*RunLeaderElectionResponsePB) UnmarshalJSON

func (m *RunLeaderElectionResponsePB) UnmarshalJSON(b []byte) error

type StartRemoteBootstrapRequestPB

type StartRemoteBootstrapRequestPB struct {

	// UUID of server this request is addressed to.
	DestUuid []byte `protobuf:"bytes,5,opt,name=dest_uuid,json=destUuid" json:"dest_uuid,omitempty"`
	TabletId []byte `protobuf:"bytes,1,req,name=tablet_id,json=tabletId" json:"tablet_id,omitempty"`
	// Identification for the host we are bootstrapping from.
	// TODO: Consider renaming these to bootstrap_source_*.
	BootstrapPeerUuid   []byte               `protobuf:"bytes,2,req,name=bootstrap_peer_uuid,json=bootstrapPeerUuid" json:"bootstrap_peer_uuid,omitempty"`
	SourcePrivateAddr   []*common.HostPortPB `protobuf:"bytes,3,rep,name=source_private_addr,json=sourcePrivateAddr" json:"source_private_addr,omitempty"`
	SourceBroadcastAddr []*common.HostPortPB `protobuf:"bytes,6,rep,name=source_broadcast_addr,json=sourceBroadcastAddr" json:"source_broadcast_addr,omitempty"`
	SourceCloudInfo     *common.CloudInfoPB  `protobuf:"bytes,7,opt,name=source_cloud_info,json=sourceCloudInfo" json:"source_cloud_info,omitempty"`
	// The caller's term. In the case that the target of this request has a
	// TOMBSTONED replica with a term higher than this one, the request will fail.
	CallerTerm *int64 `protobuf:"varint,4,opt,name=caller_term,json=callerTerm,def=-1" json:"caller_term,omitempty"`
	// contains filtered or unexported fields
}

func (*StartRemoteBootstrapRequestPB) Descriptor deprecated

func (*StartRemoteBootstrapRequestPB) Descriptor() ([]byte, []int)

Deprecated: Use StartRemoteBootstrapRequestPB.ProtoReflect.Descriptor instead.

func (*StartRemoteBootstrapRequestPB) GetBootstrapPeerUuid

func (x *StartRemoteBootstrapRequestPB) GetBootstrapPeerUuid() []byte

func (*StartRemoteBootstrapRequestPB) GetCallerTerm

func (x *StartRemoteBootstrapRequestPB) GetCallerTerm() int64

func (*StartRemoteBootstrapRequestPB) GetDestUuid

func (x *StartRemoteBootstrapRequestPB) GetDestUuid() []byte

func (*StartRemoteBootstrapRequestPB) GetSourceBroadcastAddr

func (x *StartRemoteBootstrapRequestPB) GetSourceBroadcastAddr() []*common.HostPortPB

func (*StartRemoteBootstrapRequestPB) GetSourceCloudInfo

func (x *StartRemoteBootstrapRequestPB) GetSourceCloudInfo() *common.CloudInfoPB

func (*StartRemoteBootstrapRequestPB) GetSourcePrivateAddr

func (x *StartRemoteBootstrapRequestPB) GetSourcePrivateAddr() []*common.HostPortPB

func (*StartRemoteBootstrapRequestPB) GetTabletId

func (x *StartRemoteBootstrapRequestPB) GetTabletId() []byte

func (*StartRemoteBootstrapRequestPB) MarshalJSON

func (m *StartRemoteBootstrapRequestPB) MarshalJSON() ([]byte, error)

func (*StartRemoteBootstrapRequestPB) ProtoMessage

func (*StartRemoteBootstrapRequestPB) ProtoMessage()

func (*StartRemoteBootstrapRequestPB) ProtoReflect

func (*StartRemoteBootstrapRequestPB) Reset

func (x *StartRemoteBootstrapRequestPB) Reset()

func (*StartRemoteBootstrapRequestPB) String

func (*StartRemoteBootstrapRequestPB) UnmarshalJSON

func (m *StartRemoteBootstrapRequestPB) UnmarshalJSON(b []byte) error

type StartRemoteBootstrapResponsePB

type StartRemoteBootstrapResponsePB struct {
	Error *tserver.TabletServerErrorPB `protobuf:"bytes,1,opt,name=error" json:"error,omitempty"`
	// contains filtered or unexported fields
}

func (*StartRemoteBootstrapResponsePB) Descriptor deprecated

func (*StartRemoteBootstrapResponsePB) Descriptor() ([]byte, []int)

Deprecated: Use StartRemoteBootstrapResponsePB.ProtoReflect.Descriptor instead.

func (*StartRemoteBootstrapResponsePB) GetError

func (*StartRemoteBootstrapResponsePB) MarshalJSON

func (m *StartRemoteBootstrapResponsePB) MarshalJSON() ([]byte, error)

func (*StartRemoteBootstrapResponsePB) ProtoMessage

func (*StartRemoteBootstrapResponsePB) ProtoMessage()

func (*StartRemoteBootstrapResponsePB) ProtoReflect

func (*StartRemoteBootstrapResponsePB) Reset

func (x *StartRemoteBootstrapResponsePB) Reset()

func (*StartRemoteBootstrapResponsePB) String

func (*StartRemoteBootstrapResponsePB) UnmarshalJSON

func (m *StartRemoteBootstrapResponsePB) UnmarshalJSON(b []byte) error

type VoteRequestPB

type VoteRequestPB struct {

	// UUID of server this request is addressed to.
	DestUuid []byte `protobuf:"bytes,6,opt,name=dest_uuid,json=destUuid" json:"dest_uuid,omitempty"`
	// Identifies the tablet configuration a the vote is being requested for.
	TabletId *string `protobuf:"bytes,1,req,name=tablet_id,json=tabletId" json:"tablet_id,omitempty"`
	// The uuid of the sending peer.
	CandidateUuid []byte `protobuf:"bytes,2,req,name=candidate_uuid,json=candidateUuid" json:"candidate_uuid,omitempty"`
	// The term we are requesting a vote for.
	// If this term is higher than the callee's term, the callee will update its
	// own term to match, and if it is the current leader it will step down.
	CandidateTerm *int64 `protobuf:"varint,3,req,name=candidate_term,json=candidateTerm" json:"candidate_term,omitempty"`
	// The candidate node status so that the voter node can
	// decide whether to vote for it as LEADER.
	//
	// In particular, this includes the last OpId persisted in the candidate's
	// log, which corresponds to the lastLogIndex and lastLogTerm fields in Raft.
	// A replica must vote no for a candidate that has an OpId lower than them.
	CandidateStatus *ConsensusStatusPB `protobuf:"bytes,4,req,name=candidate_status,json=candidateStatus" json:"candidate_status,omitempty"`
	// Normally, replicas will deny a vote with a LEADER_IS_ALIVE error if
	// they are a leader or recently heard from a leader. This is to prevent
	// partitioned nodes from disturbing liveness. If this flag is true,
	// peers will vote even if they think a leader is alive. This can be used
	// for example to force a faster leader hand-off rather than waiting for
	// the election timer to expire.
	IgnoreLiveLeader *bool `protobuf:"varint,5,opt,name=ignore_live_leader,json=ignoreLiveLeader,def=0" json:"ignore_live_leader,omitempty"`
	// true if it is pre-election request and state of voter should not be changed.
	Preelection *bool `protobuf:"varint,7,opt,name=preelection" json:"preelection,omitempty"`
	// contains filtered or unexported fields
}

A request from a candidate peer that wishes to become leader of the configuration serving tablet with 'tablet_id'. See RAFT sec. 5.2.

func (*VoteRequestPB) Descriptor deprecated

func (*VoteRequestPB) Descriptor() ([]byte, []int)

Deprecated: Use VoteRequestPB.ProtoReflect.Descriptor instead.

func (*VoteRequestPB) GetCandidateStatus

func (x *VoteRequestPB) GetCandidateStatus() *ConsensusStatusPB

func (*VoteRequestPB) GetCandidateTerm

func (x *VoteRequestPB) GetCandidateTerm() int64

func (*VoteRequestPB) GetCandidateUuid

func (x *VoteRequestPB) GetCandidateUuid() []byte

func (*VoteRequestPB) GetDestUuid

func (x *VoteRequestPB) GetDestUuid() []byte

func (*VoteRequestPB) GetIgnoreLiveLeader

func (x *VoteRequestPB) GetIgnoreLiveLeader() bool

func (*VoteRequestPB) GetPreelection

func (x *VoteRequestPB) GetPreelection() bool

func (*VoteRequestPB) GetTabletId

func (x *VoteRequestPB) GetTabletId() string

func (*VoteRequestPB) MarshalJSON

func (m *VoteRequestPB) MarshalJSON() ([]byte, error)

func (*VoteRequestPB) ProtoMessage

func (*VoteRequestPB) ProtoMessage()

func (*VoteRequestPB) ProtoReflect

func (x *VoteRequestPB) ProtoReflect() protoreflect.Message

func (*VoteRequestPB) Reset

func (x *VoteRequestPB) Reset()

func (*VoteRequestPB) String

func (x *VoteRequestPB) String() string

func (*VoteRequestPB) UnmarshalJSON

func (m *VoteRequestPB) UnmarshalJSON(b []byte) error

type VoteResponsePB

type VoteResponsePB struct {

	// The uuid of the node sending the reply.
	ResponderUuid []byte `protobuf:"bytes,1,opt,name=responder_uuid,json=responderUuid" json:"responder_uuid,omitempty"`
	// The term of the node sending the reply.
	// Allows the candidate to update itself if it is behind.
	ResponderTerm *int64 `protobuf:"varint,2,opt,name=responder_term,json=responderTerm" json:"responder_term,omitempty"`
	// True if this peer voted for the caller, false otherwise.
	VoteGranted *bool `protobuf:"varint,3,opt,name=vote_granted,json=voteGranted" json:"vote_granted,omitempty"`
	// An upper bound on the remainder of the old leader's lease that the new leader has to wait out
	// before it can start serving read and write requests.
	RemainingLeaderLeaseDurationMs *int32 `` /* 151-byte string literal not displayed */
	// UUID of node that has lease.
	LeaderLeaseUuid []byte `protobuf:"bytes,7,opt,name=leader_lease_uuid,json=leaderLeaseUuid" json:"leader_lease_uuid,omitempty"`
	// An upper bound on the deadline of the old hybrid time leader's lease that the new leader has
	// to wait out before it can start serving read and write requests.
	// Contains only physical part of hybrid time.
	LeaderHtLeaseExpiration *uint64 `` /* 129-byte string literal not displayed */
	// UUID of node that has ht lease.
	LeaderHtLeaseUuid []byte `protobuf:"bytes,8,opt,name=leader_ht_lease_uuid,json=leaderHtLeaseUuid" json:"leader_ht_lease_uuid,omitempty"`
	// true if it is response to pre-election request.
	Preelection *bool `protobuf:"varint,6,opt,name=preelection" json:"preelection,omitempty"`
	// TODO: Migrate ConsensusService to the AppStatusPB RPC style and merge these errors.
	// Error message from the consensus implementation.
	ConsensusError *ConsensusErrorPB `protobuf:"bytes,998,opt,name=consensus_error,json=consensusError" json:"consensus_error,omitempty"`
	// A generic error message (such as tablet not found).
	Error *tserver.TabletServerErrorPB `protobuf:"bytes,999,opt,name=error" json:"error,omitempty"`
	// contains filtered or unexported fields
}

A response from a replica to a leader election request.

func (*VoteResponsePB) Descriptor deprecated

func (*VoteResponsePB) Descriptor() ([]byte, []int)

Deprecated: Use VoteResponsePB.ProtoReflect.Descriptor instead.

func (*VoteResponsePB) GetConsensusError

func (x *VoteResponsePB) GetConsensusError() *ConsensusErrorPB

func (*VoteResponsePB) GetError

func (*VoteResponsePB) GetLeaderHtLeaseExpiration

func (x *VoteResponsePB) GetLeaderHtLeaseExpiration() uint64

func (*VoteResponsePB) GetLeaderHtLeaseUuid

func (x *VoteResponsePB) GetLeaderHtLeaseUuid() []byte

func (*VoteResponsePB) GetLeaderLeaseUuid

func (x *VoteResponsePB) GetLeaderLeaseUuid() []byte

func (*VoteResponsePB) GetPreelection

func (x *VoteResponsePB) GetPreelection() bool

func (*VoteResponsePB) GetRemainingLeaderLeaseDurationMs

func (x *VoteResponsePB) GetRemainingLeaderLeaseDurationMs() int32

func (*VoteResponsePB) GetResponderTerm

func (x *VoteResponsePB) GetResponderTerm() int64

func (*VoteResponsePB) GetResponderUuid

func (x *VoteResponsePB) GetResponderUuid() []byte

func (*VoteResponsePB) GetVoteGranted

func (x *VoteResponsePB) GetVoteGranted() bool

func (*VoteResponsePB) MarshalJSON

func (m *VoteResponsePB) MarshalJSON() ([]byte, error)

func (*VoteResponsePB) ProtoMessage

func (*VoteResponsePB) ProtoMessage()

func (*VoteResponsePB) ProtoReflect

func (x *VoteResponsePB) ProtoReflect() protoreflect.Message

func (*VoteResponsePB) Reset

func (x *VoteResponsePB) Reset()

func (*VoteResponsePB) String

func (x *VoteResponsePB) String() string

func (*VoteResponsePB) UnmarshalJSON

func (m *VoteResponsePB) UnmarshalJSON(b []byte) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL