msgs

package
v0.0.0-...-f247ec5 Latest Latest
Warning

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

Go to latest
Published: Apr 15, 2021 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var File_msgs_msgs_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type CEntry

type CEntry struct {
	SeqNo           uint64        `protobuf:"varint,1,opt,name=seq_no,json=seqNo,proto3" json:"seq_no,omitempty"`
	CheckpointValue []byte        `protobuf:"bytes,2,opt,name=checkpoint_value,json=checkpointValue,proto3" json:"checkpoint_value,omitempty"`
	NetworkState    *NetworkState `protobuf:"bytes,3,opt,name=network_state,json=networkState,proto3" json:"network_state,omitempty"`
	// contains filtered or unexported fields
}

CEntry is an entry which must be persisted before a Checkpoint message is sent.

func (*CEntry) Descriptor deprecated

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

Deprecated: Use CEntry.ProtoReflect.Descriptor instead.

func (*CEntry) GetCheckpointValue

func (x *CEntry) GetCheckpointValue() []byte

func (*CEntry) GetNetworkState

func (x *CEntry) GetNetworkState() *NetworkState

func (*CEntry) GetSeqNo

func (x *CEntry) GetSeqNo() uint64

func (*CEntry) ProtoMessage

func (*CEntry) ProtoMessage()

func (*CEntry) ProtoReflect

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

func (*CEntry) Reset

func (x *CEntry) Reset()

func (*CEntry) String

func (x *CEntry) String() string

type Checkpoint

type Checkpoint struct {
	SeqNo uint64 `protobuf:"varint,1,opt,name=seq_no,json=seqNo,proto3" json:"seq_no,omitempty"`
	Value []byte `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
	// contains filtered or unexported fields
}

func (*Checkpoint) Descriptor deprecated

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

Deprecated: Use Checkpoint.ProtoReflect.Descriptor instead.

func (*Checkpoint) GetSeqNo

func (x *Checkpoint) GetSeqNo() uint64

func (*Checkpoint) GetValue

func (x *Checkpoint) GetValue() []byte

func (*Checkpoint) ProtoMessage

func (*Checkpoint) ProtoMessage()

func (*Checkpoint) ProtoReflect

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

func (*Checkpoint) Reset

func (x *Checkpoint) Reset()

func (*Checkpoint) String

func (x *Checkpoint) String() string

type Commit

type Commit struct {
	SeqNo  uint64 `protobuf:"varint,1,opt,name=seq_no,json=seqNo,proto3" json:"seq_no,omitempty"`
	Epoch  uint64 `protobuf:"varint,2,opt,name=epoch,proto3" json:"epoch,omitempty"`
	Digest []byte `protobuf:"bytes,3,opt,name=digest,proto3" json:"digest,omitempty"`
	// contains filtered or unexported fields
}

func (*Commit) Descriptor deprecated

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

Deprecated: Use Commit.ProtoReflect.Descriptor instead.

func (*Commit) GetDigest

func (x *Commit) GetDigest() []byte

func (*Commit) GetEpoch

func (x *Commit) GetEpoch() uint64

func (*Commit) GetSeqNo

func (x *Commit) GetSeqNo() uint64

func (*Commit) ProtoMessage

func (*Commit) ProtoMessage()

func (*Commit) ProtoReflect

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

func (*Commit) Reset

func (x *Commit) Reset()

func (*Commit) String

func (x *Commit) String() string

type ECEntry

type ECEntry struct {
	EpochNumber uint64 `protobuf:"varint,1,opt,name=epoch_number,json=epochNumber,proto3" json:"epoch_number,omitempty"`
	// contains filtered or unexported fields
}

ECEntry indicates that an epoch change has been sent, and that log truncation must halt until the next epoch begins.

func (*ECEntry) Descriptor deprecated

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

Deprecated: Use ECEntry.ProtoReflect.Descriptor instead.

func (*ECEntry) GetEpochNumber

func (x *ECEntry) GetEpochNumber() uint64

func (*ECEntry) ProtoMessage

func (*ECEntry) ProtoMessage()

func (*ECEntry) ProtoReflect

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

func (*ECEntry) Reset

func (x *ECEntry) Reset()

func (*ECEntry) String

func (x *ECEntry) String() string

type EpochChange

type EpochChange struct {
	NewEpoch uint64 `protobuf:"varint,1,opt,name=new_epoch,json=newEpoch,proto3" json:"new_epoch,omitempty"`
	// c_set contains the entries for the C-set as defined by the classical
	// PBFT view-change protocol.
	Checkpoints []*Checkpoint `protobuf:"bytes,2,rep,name=checkpoints,proto3" json:"checkpoints,omitempty"`
	// p_set contains the entries for the P-set as defined by the classical
	// PBFT view-change protocol.
	PSet []*EpochChange_SetEntry `protobuf:"bytes,3,rep,name=p_set,json=pSet,proto3" json:"p_set,omitempty"`
	// q_set contains the entries for the Q-set as defined by the classical
	// PBFT view-change protocol.
	QSet []*EpochChange_SetEntry `protobuf:"bytes,4,rep,name=q_set,json=qSet,proto3" json:"q_set,omitempty"`
	// contains filtered or unexported fields
}

EpochChange messages are used to implement the classical PBFT view-change protocol, (very) slightly modified to adapt to Mir. The assorted sets are encoded as repeated fields, rather than as maps for ease of serialization and particularly for computing a digest to attest to. If any set contains a duplicated entry, the message may be discarded as byzantine.

func (*EpochChange) Descriptor deprecated

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

Deprecated: Use EpochChange.ProtoReflect.Descriptor instead.

func (*EpochChange) GetCheckpoints

func (x *EpochChange) GetCheckpoints() []*Checkpoint

func (*EpochChange) GetNewEpoch

func (x *EpochChange) GetNewEpoch() uint64

func (*EpochChange) GetPSet

func (x *EpochChange) GetPSet() []*EpochChange_SetEntry

func (*EpochChange) GetQSet

func (x *EpochChange) GetQSet() []*EpochChange_SetEntry

func (*EpochChange) ProtoMessage

func (*EpochChange) ProtoMessage()

func (*EpochChange) ProtoReflect

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

func (*EpochChange) Reset

func (x *EpochChange) Reset()

func (*EpochChange) String

func (x *EpochChange) String() string

type EpochChangeAck

type EpochChangeAck struct {
	Originator uint64 `protobuf:"varint,1,opt,name=originator,proto3" json:"originator,omitempty"`
	// epoch_change is included fully instead of echo-ing the digest as suggested by the original
	// PBFT paper.  This is purely to prevent requiring a separate fetch step for missing epoch change
	// requests.  Although this is slightly heavier, because ungraceful epoch change is not a performance
	// optimal path, the simplification seems worthwhile.
	EpochChange *EpochChange `protobuf:"bytes,2,opt,name=epoch_change,json=epochChange,proto3" json:"epoch_change,omitempty"`
	// contains filtered or unexported fields
}

EpochChangeAck messages are broadcast in response to receiving a valid epoch change from a replica. Replicas collect these epoch change ack messages, and when there are 2f+1 such messages begin to count that epoch change as appropriately broadcast for purposes of the epoch change timer.

func (*EpochChangeAck) Descriptor deprecated

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

Deprecated: Use EpochChangeAck.ProtoReflect.Descriptor instead.

func (*EpochChangeAck) GetEpochChange

func (x *EpochChangeAck) GetEpochChange() *EpochChange

func (*EpochChangeAck) GetOriginator

func (x *EpochChangeAck) GetOriginator() uint64

func (*EpochChangeAck) ProtoMessage

func (*EpochChangeAck) ProtoMessage()

func (*EpochChangeAck) ProtoReflect

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

func (*EpochChangeAck) Reset

func (x *EpochChangeAck) Reset()

func (*EpochChangeAck) String

func (x *EpochChangeAck) String() string

type EpochChange_SetEntry

type EpochChange_SetEntry struct {
	Epoch  uint64 `protobuf:"varint,1,opt,name=epoch,proto3" json:"epoch,omitempty"`
	SeqNo  uint64 `protobuf:"varint,2,opt,name=seq_no,json=seqNo,proto3" json:"seq_no,omitempty"`
	Digest []byte `protobuf:"bytes,3,opt,name=digest,proto3" json:"digest,omitempty"`
	// contains filtered or unexported fields
}

func (*EpochChange_SetEntry) Descriptor deprecated

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

Deprecated: Use EpochChange_SetEntry.ProtoReflect.Descriptor instead.

func (*EpochChange_SetEntry) GetDigest

func (x *EpochChange_SetEntry) GetDigest() []byte

func (*EpochChange_SetEntry) GetEpoch

func (x *EpochChange_SetEntry) GetEpoch() uint64

func (*EpochChange_SetEntry) GetSeqNo

func (x *EpochChange_SetEntry) GetSeqNo() uint64

func (*EpochChange_SetEntry) ProtoMessage

func (*EpochChange_SetEntry) ProtoMessage()

func (*EpochChange_SetEntry) ProtoReflect

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

func (*EpochChange_SetEntry) Reset

func (x *EpochChange_SetEntry) Reset()

func (*EpochChange_SetEntry) String

func (x *EpochChange_SetEntry) String() string

type EpochConfig

type EpochConfig struct {

	// number of this new epoch
	Number            uint64   `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"`
	Leaders           []uint64 `protobuf:"varint,2,rep,packed,name=leaders,proto3" json:"leaders,omitempty"`
	PlannedExpiration uint64   `protobuf:"varint,3,opt,name=planned_expiration,json=plannedExpiration,proto3" json:"planned_expiration,omitempty"`
	// contains filtered or unexported fields
}

func (*EpochConfig) Descriptor deprecated

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

Deprecated: Use EpochConfig.ProtoReflect.Descriptor instead.

func (*EpochConfig) GetLeaders

func (x *EpochConfig) GetLeaders() []uint64

func (*EpochConfig) GetNumber

func (x *EpochConfig) GetNumber() uint64

func (*EpochConfig) GetPlannedExpiration

func (x *EpochConfig) GetPlannedExpiration() uint64

func (*EpochConfig) ProtoMessage

func (*EpochConfig) ProtoMessage()

func (*EpochConfig) ProtoReflect

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

func (*EpochConfig) Reset

func (x *EpochConfig) Reset()

func (*EpochConfig) String

func (x *EpochConfig) String() string

type FEntry

type FEntry struct {
	EndsEpochConfig *EpochConfig `protobuf:"bytes,1,opt,name=ends_epoch_config,json=endsEpochConfig,proto3" json:"ends_epoch_config,omitempty"`
	// contains filtered or unexported fields
}

func (*FEntry) Descriptor deprecated

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

Deprecated: Use FEntry.ProtoReflect.Descriptor instead.

func (*FEntry) GetEndsEpochConfig

func (x *FEntry) GetEndsEpochConfig() *EpochConfig

func (*FEntry) ProtoMessage

func (*FEntry) ProtoMessage()

func (*FEntry) ProtoReflect

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

func (*FEntry) Reset

func (x *FEntry) Reset()

func (*FEntry) String

func (x *FEntry) String() string

type FetchBatch

type FetchBatch struct {
	SeqNo  uint64 `protobuf:"varint,1,opt,name=seq_no,json=seqNo,proto3" json:"seq_no,omitempty"`
	Digest []byte `protobuf:"bytes,2,opt,name=digest,proto3" json:"digest,omitempty"`
	// contains filtered or unexported fields
}

func (*FetchBatch) Descriptor deprecated

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

Deprecated: Use FetchBatch.ProtoReflect.Descriptor instead.

func (*FetchBatch) GetDigest

func (x *FetchBatch) GetDigest() []byte

func (*FetchBatch) GetSeqNo

func (x *FetchBatch) GetSeqNo() uint64

func (*FetchBatch) ProtoMessage

func (*FetchBatch) ProtoMessage()

func (*FetchBatch) ProtoReflect

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

func (*FetchBatch) Reset

func (x *FetchBatch) Reset()

func (*FetchBatch) String

func (x *FetchBatch) String() string

type ForwardBatch

type ForwardBatch struct {
	SeqNo       uint64        `protobuf:"varint,1,opt,name=seq_no,json=seqNo,proto3" json:"seq_no,omitempty"`
	RequestAcks []*RequestAck `protobuf:"bytes,2,rep,name=request_acks,json=requestAcks,proto3" json:"request_acks,omitempty"`
	Digest      []byte        `protobuf:"bytes,3,opt,name=digest,proto3" json:"digest,omitempty"`
	// contains filtered or unexported fields
}

func (*ForwardBatch) Descriptor deprecated

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

Deprecated: Use ForwardBatch.ProtoReflect.Descriptor instead.

func (*ForwardBatch) GetDigest

func (x *ForwardBatch) GetDigest() []byte

func (*ForwardBatch) GetRequestAcks

func (x *ForwardBatch) GetRequestAcks() []*RequestAck

func (*ForwardBatch) GetSeqNo

func (x *ForwardBatch) GetSeqNo() uint64

func (*ForwardBatch) ProtoMessage

func (*ForwardBatch) ProtoMessage()

func (*ForwardBatch) ProtoReflect

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

func (*ForwardBatch) Reset

func (x *ForwardBatch) Reset()

func (*ForwardBatch) String

func (x *ForwardBatch) String() string

type ForwardRequest

type ForwardRequest struct {
	RequestAck  *RequestAck `protobuf:"bytes,1,opt,name=request_ack,json=requestAck,proto3" json:"request_ack,omitempty"`
	RequestData []byte      `protobuf:"bytes,2,opt,name=request_data,json=requestData,proto3" json:"request_data,omitempty"`
	// contains filtered or unexported fields
}

func (*ForwardRequest) Descriptor deprecated

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

Deprecated: Use ForwardRequest.ProtoReflect.Descriptor instead.

func (*ForwardRequest) GetRequestAck

func (x *ForwardRequest) GetRequestAck() *RequestAck

func (*ForwardRequest) GetRequestData

func (x *ForwardRequest) GetRequestData() []byte

func (*ForwardRequest) ProtoMessage

func (*ForwardRequest) ProtoMessage()

func (*ForwardRequest) ProtoReflect

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

func (*ForwardRequest) Reset

func (x *ForwardRequest) Reset()

func (*ForwardRequest) String

func (x *ForwardRequest) String() string

type Msg

type Msg struct {

	// Types that are assignable to Type:
	//	*Msg_Preprepare
	//	*Msg_Prepare
	//	*Msg_Commit
	//	*Msg_Checkpoint
	//	*Msg_Suspect
	//	*Msg_EpochChange
	//	*Msg_EpochChangeAck
	//	*Msg_NewEpoch
	//	*Msg_NewEpochEcho
	//	*Msg_NewEpochReady
	//	*Msg_FetchBatch
	//	*Msg_ForwardBatch
	//	*Msg_FetchRequest
	//	*Msg_ForwardRequest
	//	*Msg_RequestAck
	Type isMsg_Type `protobuf_oneof:"type"`
	// contains filtered or unexported fields
}

func (*Msg) Descriptor deprecated

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

Deprecated: Use Msg.ProtoReflect.Descriptor instead.

func (*Msg) GetCheckpoint

func (x *Msg) GetCheckpoint() *Checkpoint

func (*Msg) GetCommit

func (x *Msg) GetCommit() *Commit

func (*Msg) GetEpochChange

func (x *Msg) GetEpochChange() *EpochChange

func (*Msg) GetEpochChangeAck

func (x *Msg) GetEpochChangeAck() *EpochChangeAck

func (*Msg) GetFetchBatch

func (x *Msg) GetFetchBatch() *FetchBatch

func (*Msg) GetFetchRequest

func (x *Msg) GetFetchRequest() *RequestAck

func (*Msg) GetForwardBatch

func (x *Msg) GetForwardBatch() *ForwardBatch

func (*Msg) GetForwardRequest

func (x *Msg) GetForwardRequest() *ForwardRequest

func (*Msg) GetNewEpoch

func (x *Msg) GetNewEpoch() *NewEpoch

func (*Msg) GetNewEpochEcho

func (x *Msg) GetNewEpochEcho() *NewEpochConfig

func (*Msg) GetNewEpochReady

func (x *Msg) GetNewEpochReady() *NewEpochConfig

func (*Msg) GetPrepare

func (x *Msg) GetPrepare() *Prepare

func (*Msg) GetPreprepare

func (x *Msg) GetPreprepare() *Preprepare

func (*Msg) GetRequestAck

func (x *Msg) GetRequestAck() *RequestAck

func (*Msg) GetSuspect

func (x *Msg) GetSuspect() *Suspect

func (*Msg) GetType

func (m *Msg) GetType() isMsg_Type

func (*Msg) ProtoMessage

func (*Msg) ProtoMessage()

func (*Msg) ProtoReflect

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

func (*Msg) Reset

func (x *Msg) Reset()

func (*Msg) String

func (x *Msg) String() string

type Msg_Checkpoint

type Msg_Checkpoint struct {
	Checkpoint *Checkpoint `protobuf:"bytes,4,opt,name=checkpoint,proto3,oneof"`
}

type Msg_Commit

type Msg_Commit struct {
	Commit *Commit `protobuf:"bytes,3,opt,name=commit,proto3,oneof"`
}

type Msg_EpochChange

type Msg_EpochChange struct {
	EpochChange *EpochChange `protobuf:"bytes,6,opt,name=epoch_change,json=epochChange,proto3,oneof"`
}

type Msg_EpochChangeAck

type Msg_EpochChangeAck struct {
	EpochChangeAck *EpochChangeAck `protobuf:"bytes,7,opt,name=epoch_change_ack,json=epochChangeAck,proto3,oneof"`
}

type Msg_FetchBatch

type Msg_FetchBatch struct {
	FetchBatch *FetchBatch `protobuf:"bytes,11,opt,name=fetch_batch,json=fetchBatch,proto3,oneof"`
}

type Msg_FetchRequest

type Msg_FetchRequest struct {
	FetchRequest *RequestAck `protobuf:"bytes,13,opt,name=fetch_request,json=fetchRequest,proto3,oneof"`
}

type Msg_ForwardBatch

type Msg_ForwardBatch struct {
	ForwardBatch *ForwardBatch `protobuf:"bytes,12,opt,name=forward_batch,json=forwardBatch,proto3,oneof"`
}

type Msg_ForwardRequest

type Msg_ForwardRequest struct {
	ForwardRequest *ForwardRequest `protobuf:"bytes,14,opt,name=forward_request,json=forwardRequest,proto3,oneof"`
}

type Msg_NewEpoch

type Msg_NewEpoch struct {
	NewEpoch *NewEpoch `protobuf:"bytes,8,opt,name=new_epoch,json=newEpoch,proto3,oneof"`
}

type Msg_NewEpochEcho

type Msg_NewEpochEcho struct {
	NewEpochEcho *NewEpochConfig `protobuf:"bytes,9,opt,name=new_epoch_echo,json=newEpochEcho,proto3,oneof"`
}

type Msg_NewEpochReady

type Msg_NewEpochReady struct {
	NewEpochReady *NewEpochConfig `protobuf:"bytes,10,opt,name=new_epoch_ready,json=newEpochReady,proto3,oneof"`
}

type Msg_Prepare

type Msg_Prepare struct {
	Prepare *Prepare `protobuf:"bytes,2,opt,name=prepare,proto3,oneof"`
}

type Msg_Preprepare

type Msg_Preprepare struct {
	Preprepare *Preprepare `protobuf:"bytes,1,opt,name=preprepare,proto3,oneof"`
}

type Msg_RequestAck

type Msg_RequestAck struct {
	RequestAck *RequestAck `protobuf:"bytes,15,opt,name=request_ack,json=requestAck,proto3,oneof"`
}

type Msg_Suspect

type Msg_Suspect struct {
	Suspect *Suspect `protobuf:"bytes,5,opt,name=suspect,proto3,oneof"`
}

type NEntry

type NEntry struct {
	SeqNo       uint64       `protobuf:"varint,1,opt,name=seq_no,json=seqNo,proto3" json:"seq_no,omitempty"`
	EpochConfig *EpochConfig `protobuf:"bytes,2,opt,name=epoch_config,json=epochConfig,proto3" json:"epoch_config,omitempty"` // TODO, include whether we've suspected
	// contains filtered or unexported fields
}

NEntry indicates that a new set of sequences are being allocated, and will be persisted immediately before log truncation occurs.

func (*NEntry) Descriptor deprecated

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

Deprecated: Use NEntry.ProtoReflect.Descriptor instead.

func (*NEntry) GetEpochConfig

func (x *NEntry) GetEpochConfig() *EpochConfig

func (*NEntry) GetSeqNo

func (x *NEntry) GetSeqNo() uint64

func (*NEntry) ProtoMessage

func (*NEntry) ProtoMessage()

func (*NEntry) ProtoReflect

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

func (*NEntry) Reset

func (x *NEntry) Reset()

func (*NEntry) String

func (x *NEntry) String() string

type NetworkState

type NetworkState struct {
	Config                  *NetworkState_Config   `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	Clients                 []*NetworkState_Client `protobuf:"bytes,2,rep,name=clients,proto3" json:"clients,omitempty"`
	PendingReconfigurations []*Reconfiguration     ``                                                                               /* 130-byte string literal not displayed */
	Reconfigured            bool                   `protobuf:"varint,4,opt,name=reconfigured,proto3" json:"reconfigured,omitempty"` // TODO, do we need this?
	// contains filtered or unexported fields
}

NetworkState contains the configuration agreed to by all nodes in the network as well as the current client statuses. NetworkState must be reflected in the state digest for checkpoints. The easiest way to accomplish this is by serializing the structure and including it in the application state. Note, when there are a large number of clients, performing a custom serialization may be desirable.

func (*NetworkState) Descriptor deprecated

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

Deprecated: Use NetworkState.ProtoReflect.Descriptor instead.

func (*NetworkState) GetClients

func (x *NetworkState) GetClients() []*NetworkState_Client

func (*NetworkState) GetConfig

func (x *NetworkState) GetConfig() *NetworkState_Config

func (*NetworkState) GetPendingReconfigurations

func (x *NetworkState) GetPendingReconfigurations() []*Reconfiguration

func (*NetworkState) GetReconfigured

func (x *NetworkState) GetReconfigured() bool

func (*NetworkState) ProtoMessage

func (*NetworkState) ProtoMessage()

func (*NetworkState) ProtoReflect

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

func (*NetworkState) Reset

func (x *NetworkState) Reset()

func (*NetworkState) String

func (x *NetworkState) String() string

type NetworkState_Client

type NetworkState_Client struct {

	// A unique ID for this client, never repeated.
	Id uint64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	// Width is the configured width of the request window for this client.
	// Clients must submit requests sequentially, but, replicas will participate
	// in the ack procedures for any request acknowledged within this window.
	Width uint32 `protobuf:"varint,2,opt,name=width,proto3" json:"width,omitempty"`
	// WidthConsumedLastCheckpoint is the portion of the request window which
	// overlaps with commits in the last checkpoint.  It must be tracked because
	// we do not want to wait for the previous checkpoint to be computed before
	// processing requests in the next checkpoint window.  Therefore, we restrict
	// the width in the current checkpoint window to be width - width_consumed_last_checkpoint
	// and in this way, we ensure that all replicas regardless of whether they have the
	// last checkpoint can deterministically evaluate whether a request is within the
	// expected watermarks.
	WidthConsumedLastCheckpoint uint32 `` /* 147-byte string literal not displayed */
	// LowWatermark is the lowest uncommitted request number.
	LowWatermark uint64 `protobuf:"varint,4,opt,name=low_watermark,json=lowWatermark,proto3" json:"low_watermark,omitempty"`
	// CommittedMask is a bitmask of up to length 'width', indicating which request numbers
	// beyond the low_watermark have committed.  If non-empty, the last byte is never 0,
	// and all request numbers beyond the last bit are uncommitted.  Note, a repeated bool
	// would be much more natural, but very space inefficient per proto's implementation.
	CommittedMask []byte `protobuf:"bytes,5,opt,name=committed_mask,json=committedMask,proto3" json:"committed_mask,omitempty"`
	// contains filtered or unexported fields
}

func (*NetworkState_Client) Descriptor deprecated

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

Deprecated: Use NetworkState_Client.ProtoReflect.Descriptor instead.

func (*NetworkState_Client) GetCommittedMask

func (x *NetworkState_Client) GetCommittedMask() []byte

func (*NetworkState_Client) GetId

func (x *NetworkState_Client) GetId() uint64

func (*NetworkState_Client) GetLowWatermark

func (x *NetworkState_Client) GetLowWatermark() uint64

func (*NetworkState_Client) GetWidth

func (x *NetworkState_Client) GetWidth() uint32

func (*NetworkState_Client) GetWidthConsumedLastCheckpoint

func (x *NetworkState_Client) GetWidthConsumedLastCheckpoint() uint32

func (*NetworkState_Client) ProtoMessage

func (*NetworkState_Client) ProtoMessage()

func (*NetworkState_Client) ProtoReflect

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

func (*NetworkState_Client) Reset

func (x *NetworkState_Client) Reset()

func (*NetworkState_Client) String

func (x *NetworkState_Client) String() string

type NetworkState_Config

type NetworkState_Config struct {

	// Nodes represent the active nodeIDs in the network.
	// The number of nodeIDs corresponds to the size of the network.
	Nodes []uint64 `protobuf:"varint,1,rep,packed,name=nodes,proto3" json:"nodes,omitempty"`
	// CheckpointInterval is how often checkpoints are taken.  In terms of
	// of sequence numbers, this is multiplied by the configured number of
	// buckets, so that it scales naturally as the number of buckets increases
	// or decreases.
	CheckpointInterval int32 `protobuf:"varint,2,opt,name=checkpoint_interval,json=checkpointInterval,proto3" json:"checkpoint_interval,omitempty"`
	// MaxEpochLength is the maximum number of sequence numbers which may preprepare
	// in an epoch.  This is to force bucket rotation even when the system is otherwise
	// in a healthy state.  Setting this value to uint64_max will effectively disable
	// graceful epoch changes.
	MaxEpochLength uint64 `protobuf:"varint,3,opt,name=max_epoch_length,json=maxEpochLength,proto3" json:"max_epoch_length,omitempty"`
	// NumberOfBuckets is the number of buckets the network is configured to operate over.
	// Each bucket is a partition of the request space.  Typically, number of buckets should
	// be nodes * m, where 'm' is some small constant.  Setting this value to 1 effectively
	// reduces Mir to PBFT.
	NumberOfBuckets int32 `protobuf:"varint,4,opt,name=number_of_buckets,json=numberOfBuckets,proto3" json:"number_of_buckets,omitempty"`
	// F is the number of byzantine faults tolerated by the network.
	// It must be less than len(nodes)/3 (truncated).  The 'F' parameter
	// need not be maximal, ie, a network of 9 nodes with 'F' set to 1 may
	// simultaneously tolerate 1 byzantine fault, and 2 crash faults.  Whereas
	// when F=2, that 9 node network may only tolerate 2 crash faults.  Note
	// usually, a maximal value makes sense.  For instance in a network of 7
	// nodes F=1, and F=2 both provide crash tolerance of only 2 nodes.  The
	// following table summarizes the number of crash faults tolerated for
	// a given network of size N and number of byzantine faults tolerated F.
	//
	//    |           F           |
	//    | 0 | 1 | 2 | 3 | 4 | 5 |
	// N --------------------------
	// 1  | 0 |   |   |   |   |   |
	// 2  | 0 |   |   |   |   |   |
	// 3  | 1 |   |   |   |   |   |
	// 4  | 1 | 1 |   |   |   |   |
	// 5  | 2 | 1 |   |   |   |   |
	// 6  | 2 | 1 |   |   |   |   |
	// 7  | 3 | 2 | 2 |   |   |   |
	// 8  | 3 | 3 | 2 |   |   |   |
	// 9  | 4 | 3 | 2 |   |   |   |
	// 10 | 4 | 4 | 3 | 3 |   |   |
	// 11 | 5 | 4 | 4 | 3 |   |   |
	// 12 | 5 | 5 | 4 | 4 |   |   |
	// 13 | 6 | 5 | 5 | 4 | 4 |   |
	// 14 | 6 | 6 | 5 | 5 | 4 |   |
	// 15 | 7 | 6 | 6 | 5 | 5 |   |
	// 16 | 7 | 7 | 6 | 6 | 5 | 5 |
	// 17 | 8 | 7 | 7 | 6 | 6 | 5 |
	F int32 `protobuf:"varint,5,opt,name=f,proto3" json:"f,omitempty"`
	// contains filtered or unexported fields
}

func (*NetworkState_Config) Descriptor deprecated

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

Deprecated: Use NetworkState_Config.ProtoReflect.Descriptor instead.

func (*NetworkState_Config) GetCheckpointInterval

func (x *NetworkState_Config) GetCheckpointInterval() int32

func (*NetworkState_Config) GetF

func (x *NetworkState_Config) GetF() int32

func (*NetworkState_Config) GetMaxEpochLength

func (x *NetworkState_Config) GetMaxEpochLength() uint64

func (*NetworkState_Config) GetNodes

func (x *NetworkState_Config) GetNodes() []uint64

func (*NetworkState_Config) GetNumberOfBuckets

func (x *NetworkState_Config) GetNumberOfBuckets() int32

func (*NetworkState_Config) ProtoMessage

func (*NetworkState_Config) ProtoMessage()

func (*NetworkState_Config) ProtoReflect

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

func (*NetworkState_Config) Reset

func (x *NetworkState_Config) Reset()

func (*NetworkState_Config) String

func (x *NetworkState_Config) String() string

type NewEpoch

type NewEpoch struct {
	NewConfig *NewEpochConfig `protobuf:"bytes,1,opt,name=new_config,json=newConfig,proto3" json:"new_config,omitempty"`
	// epoch_changes must contains at least 2f+1 EpochChange messages references from
	// replicas in the network.  If two EpochChanges references originated from the same
	// replica, then the NewEpoch message is invalid.
	EpochChanges []*NewEpoch_RemoteEpochChange `protobuf:"bytes,2,rep,name=epoch_changes,json=epochChanges,proto3" json:"epoch_changes,omitempty"`
	// contains filtered or unexported fields
}

NewEpoch is akin to the NewView message in classical PBFT and follows the same semantics. Optionally, for graceful epoch change, the epoch_changes field may be empty. In the event that the previous epoch does not complete gracefully, the graceful NewEpoch is ignored. Unlike in classical PBFT, we employ a classical Bracha reliable broadcast on embedded config. A replica should respond to a NewEpoch message with a NewEpochEcho (assuming that the NewEpoch message is validly constructed). We consider the payload of the broadcast to be the config, and treat the epoch changes as the signature / proof which validates the initial connection but does not need to be rebroadcast.

func (*NewEpoch) Descriptor deprecated

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

Deprecated: Use NewEpoch.ProtoReflect.Descriptor instead.

func (*NewEpoch) GetEpochChanges

func (x *NewEpoch) GetEpochChanges() []*NewEpoch_RemoteEpochChange

func (*NewEpoch) GetNewConfig

func (x *NewEpoch) GetNewConfig() *NewEpochConfig

func (*NewEpoch) ProtoMessage

func (*NewEpoch) ProtoMessage()

func (*NewEpoch) ProtoReflect

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

func (*NewEpoch) Reset

func (x *NewEpoch) Reset()

func (*NewEpoch) String

func (x *NewEpoch) String() string

type NewEpochConfig

type NewEpochConfig struct {
	Config             *EpochConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	StartingCheckpoint *Checkpoint  `protobuf:"bytes,2,opt,name=starting_checkpoint,json=startingCheckpoint,proto3" json:"starting_checkpoint,omitempty"`
	// final_preprepares finalizes the last checkpoint window or windows
	// which some correct replica preprepared a sequence in. The entries are
	// digests indexed by sequence number offset by the starting_checkpoint
	// seq_no. An empty digest corresponds to a null request.
	FinalPreprepares [][]byte `protobuf:"bytes,3,rep,name=final_preprepares,json=finalPreprepares,proto3" json:"final_preprepares,omitempty"`
	// contains filtered or unexported fields
}

func (*NewEpochConfig) Descriptor deprecated

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

Deprecated: Use NewEpochConfig.ProtoReflect.Descriptor instead.

func (*NewEpochConfig) GetConfig

func (x *NewEpochConfig) GetConfig() *EpochConfig

func (*NewEpochConfig) GetFinalPreprepares

func (x *NewEpochConfig) GetFinalPreprepares() [][]byte

func (*NewEpochConfig) GetStartingCheckpoint

func (x *NewEpochConfig) GetStartingCheckpoint() *Checkpoint

func (*NewEpochConfig) ProtoMessage

func (*NewEpochConfig) ProtoMessage()

func (*NewEpochConfig) ProtoReflect

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

func (*NewEpochConfig) Reset

func (x *NewEpochConfig) Reset()

func (*NewEpochConfig) String

func (x *NewEpochConfig) String() string

type NewEpoch_RemoteEpochChange

type NewEpoch_RemoteEpochChange struct {
	NodeId uint64 `protobuf:"varint,1,opt,name=node_id,json=nodeId,proto3" json:"node_id,omitempty"`
	Digest []byte `protobuf:"bytes,2,opt,name=digest,proto3" json:"digest,omitempty"`
	// contains filtered or unexported fields
}

func (*NewEpoch_RemoteEpochChange) Descriptor deprecated

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

Deprecated: Use NewEpoch_RemoteEpochChange.ProtoReflect.Descriptor instead.

func (*NewEpoch_RemoteEpochChange) GetDigest

func (x *NewEpoch_RemoteEpochChange) GetDigest() []byte

func (*NewEpoch_RemoteEpochChange) GetNodeId

func (x *NewEpoch_RemoteEpochChange) GetNodeId() uint64

func (*NewEpoch_RemoteEpochChange) ProtoMessage

func (*NewEpoch_RemoteEpochChange) ProtoMessage()

func (*NewEpoch_RemoteEpochChange) ProtoReflect

func (*NewEpoch_RemoteEpochChange) Reset

func (x *NewEpoch_RemoteEpochChange) Reset()

func (*NewEpoch_RemoteEpochChange) String

func (x *NewEpoch_RemoteEpochChange) String() string

type PEntry

type PEntry struct {
	SeqNo  uint64 `protobuf:"varint,2,opt,name=seq_no,json=seqNo,proto3" json:"seq_no,omitempty"`
	Digest []byte `protobuf:"bytes,3,opt,name=digest,proto3" json:"digest,omitempty"`
	// contains filtered or unexported fields
}

PEntry is an entry which must be persisted before a batch is Prepared (ie, before a Commit message is sent).

func (*PEntry) Descriptor deprecated

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

Deprecated: Use PEntry.ProtoReflect.Descriptor instead.

func (*PEntry) GetDigest

func (x *PEntry) GetDigest() []byte

func (*PEntry) GetSeqNo

func (x *PEntry) GetSeqNo() uint64

func (*PEntry) ProtoMessage

func (*PEntry) ProtoMessage()

func (*PEntry) ProtoReflect

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

func (*PEntry) Reset

func (x *PEntry) Reset()

func (*PEntry) String

func (x *PEntry) String() string

type Persistent

type Persistent struct {

	// Types that are assignable to Type:
	//	*Persistent_QEntry
	//	*Persistent_PEntry
	//	*Persistent_CEntry
	//	*Persistent_NEntry
	//	*Persistent_FEntry
	//	*Persistent_ECEntry
	//	*Persistent_TEntry
	//	*Persistent_Suspect
	Type isPersistent_Type `protobuf_oneof:"type"`
	// contains filtered or unexported fields
}

Persistent contains data that should be persited by lib user

func (*Persistent) Descriptor deprecated

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

Deprecated: Use Persistent.ProtoReflect.Descriptor instead.

func (*Persistent) GetCEntry

func (x *Persistent) GetCEntry() *CEntry

func (*Persistent) GetECEntry

func (x *Persistent) GetECEntry() *ECEntry

func (*Persistent) GetFEntry

func (x *Persistent) GetFEntry() *FEntry

func (*Persistent) GetNEntry

func (x *Persistent) GetNEntry() *NEntry

func (*Persistent) GetPEntry

func (x *Persistent) GetPEntry() *PEntry

func (*Persistent) GetQEntry

func (x *Persistent) GetQEntry() *QEntry

func (*Persistent) GetSuspect

func (x *Persistent) GetSuspect() *Suspect

func (*Persistent) GetTEntry

func (x *Persistent) GetTEntry() *TEntry

func (*Persistent) GetType

func (m *Persistent) GetType() isPersistent_Type

func (*Persistent) ProtoMessage

func (*Persistent) ProtoMessage()

func (*Persistent) ProtoReflect

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

func (*Persistent) Reset

func (x *Persistent) Reset()

func (*Persistent) String

func (x *Persistent) String() string

type Persistent_CEntry

type Persistent_CEntry struct {
	CEntry *CEntry `protobuf:"bytes,3,opt,name=c_entry,json=cEntry,proto3,oneof"`
}

type Persistent_ECEntry

type Persistent_ECEntry struct {
	ECEntry *ECEntry `protobuf:"bytes,6,opt,name=e_c_entry,json=eCEntry,proto3,oneof"`
}

type Persistent_FEntry

type Persistent_FEntry struct {
	FEntry *FEntry `protobuf:"bytes,5,opt,name=f_entry,json=fEntry,proto3,oneof"`
}

type Persistent_NEntry

type Persistent_NEntry struct {
	NEntry *NEntry `protobuf:"bytes,4,opt,name=n_entry,json=nEntry,proto3,oneof"`
}

type Persistent_PEntry

type Persistent_PEntry struct {
	PEntry *PEntry `protobuf:"bytes,2,opt,name=p_entry,json=pEntry,proto3,oneof"`
}

type Persistent_QEntry

type Persistent_QEntry struct {
	QEntry *QEntry `protobuf:"bytes,1,opt,name=q_entry,json=qEntry,proto3,oneof"`
}

type Persistent_Suspect

type Persistent_Suspect struct {
	Suspect *Suspect `protobuf:"bytes,8,opt,name=suspect,proto3,oneof"` // TODO, suspect_ready?
}

type Persistent_TEntry

type Persistent_TEntry struct {
	TEntry *TEntry `protobuf:"bytes,7,opt,name=t_entry,json=tEntry,proto3,oneof"`
}

type Prepare

type Prepare struct {
	SeqNo  uint64 `protobuf:"varint,1,opt,name=seq_no,json=seqNo,proto3" json:"seq_no,omitempty"`
	Epoch  uint64 `protobuf:"varint,2,opt,name=epoch,proto3" json:"epoch,omitempty"`
	Digest []byte `protobuf:"bytes,3,opt,name=digest,proto3" json:"digest,omitempty"`
	// contains filtered or unexported fields
}

func (*Prepare) Descriptor deprecated

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

Deprecated: Use Prepare.ProtoReflect.Descriptor instead.

func (*Prepare) GetDigest

func (x *Prepare) GetDigest() []byte

func (*Prepare) GetEpoch

func (x *Prepare) GetEpoch() uint64

func (*Prepare) GetSeqNo

func (x *Prepare) GetSeqNo() uint64

func (*Prepare) ProtoMessage

func (*Prepare) ProtoMessage()

func (*Prepare) ProtoReflect

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

func (*Prepare) Reset

func (x *Prepare) Reset()

func (*Prepare) String

func (x *Prepare) String() string

type Preprepare

type Preprepare struct {
	SeqNo uint64        `protobuf:"varint,1,opt,name=seq_no,json=seqNo,proto3" json:"seq_no,omitempty"`
	Epoch uint64        `protobuf:"varint,2,opt,name=epoch,proto3" json:"epoch,omitempty"`
	Batch []*RequestAck `protobuf:"bytes,3,rep,name=batch,proto3" json:"batch,omitempty"`
	// contains filtered or unexported fields
}

func (*Preprepare) Descriptor deprecated

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

Deprecated: Use Preprepare.ProtoReflect.Descriptor instead.

func (*Preprepare) GetBatch

func (x *Preprepare) GetBatch() []*RequestAck

func (*Preprepare) GetEpoch

func (x *Preprepare) GetEpoch() uint64

func (*Preprepare) GetSeqNo

func (x *Preprepare) GetSeqNo() uint64

func (*Preprepare) ProtoMessage

func (*Preprepare) ProtoMessage()

func (*Preprepare) ProtoReflect

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

func (*Preprepare) Reset

func (x *Preprepare) Reset()

func (*Preprepare) String

func (x *Preprepare) String() string

type QEntry

type QEntry struct {
	SeqNo    uint64        `protobuf:"varint,2,opt,name=seq_no,json=seqNo,proto3" json:"seq_no,omitempty"`
	Digest   []byte        `protobuf:"bytes,3,opt,name=digest,proto3" json:"digest,omitempty"`
	Requests []*RequestAck `protobuf:"bytes,4,rep,name=requests,proto3" json:"requests,omitempty"`
	// contains filtered or unexported fields
}

QEntry is an entry which must be persisted before a batch is Preprepared (ie, before a Preprepare or Prepare message is sent). Note, any RequestAck referenced by the QEntry is already persisted to disk.

func (*QEntry) Descriptor deprecated

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

Deprecated: Use QEntry.ProtoReflect.Descriptor instead.

func (*QEntry) GetDigest

func (x *QEntry) GetDigest() []byte

func (*QEntry) GetRequests

func (x *QEntry) GetRequests() []*RequestAck

func (*QEntry) GetSeqNo

func (x *QEntry) GetSeqNo() uint64

func (*QEntry) ProtoMessage

func (*QEntry) ProtoMessage()

func (*QEntry) ProtoReflect

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

func (*QEntry) Reset

func (x *QEntry) Reset()

func (*QEntry) String

func (x *QEntry) String() string

type Reconfiguration

type Reconfiguration struct {

	// Types that are assignable to Type:
	//	*Reconfiguration_NewClient_
	//	*Reconfiguration_RemoveClient
	//	*Reconfiguration_NewConfig
	Type isReconfiguration_Type `protobuf_oneof:"type"`
	// contains filtered or unexported fields
}

func (*Reconfiguration) Descriptor deprecated

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

Deprecated: Use Reconfiguration.ProtoReflect.Descriptor instead.

func (*Reconfiguration) GetNewClient

func (x *Reconfiguration) GetNewClient() *Reconfiguration_NewClient

func (*Reconfiguration) GetNewConfig

func (x *Reconfiguration) GetNewConfig() *NetworkState_Config

func (*Reconfiguration) GetRemoveClient

func (x *Reconfiguration) GetRemoveClient() uint64

func (*Reconfiguration) GetType

func (m *Reconfiguration) GetType() isReconfiguration_Type

func (*Reconfiguration) ProtoMessage

func (*Reconfiguration) ProtoMessage()

func (*Reconfiguration) ProtoReflect

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

func (*Reconfiguration) Reset

func (x *Reconfiguration) Reset()

func (*Reconfiguration) String

func (x *Reconfiguration) String() string

type Reconfiguration_NewClient

type Reconfiguration_NewClient struct {
	Id    uint64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	Width uint32 `protobuf:"varint,2,opt,name=width,proto3" json:"width,omitempty"`
	// contains filtered or unexported fields
}

func (*Reconfiguration_NewClient) Descriptor deprecated

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

Deprecated: Use Reconfiguration_NewClient.ProtoReflect.Descriptor instead.

func (*Reconfiguration_NewClient) GetId

func (x *Reconfiguration_NewClient) GetId() uint64

func (*Reconfiguration_NewClient) GetWidth

func (x *Reconfiguration_NewClient) GetWidth() uint32

func (*Reconfiguration_NewClient) ProtoMessage

func (*Reconfiguration_NewClient) ProtoMessage()

func (*Reconfiguration_NewClient) ProtoReflect

func (*Reconfiguration_NewClient) Reset

func (x *Reconfiguration_NewClient) Reset()

func (*Reconfiguration_NewClient) String

func (x *Reconfiguration_NewClient) String() string

type Reconfiguration_NewClient_

type Reconfiguration_NewClient_ struct {
	NewClient *Reconfiguration_NewClient `protobuf:"bytes,1,opt,name=new_client,json=newClient,proto3,oneof"`
}

type Reconfiguration_NewConfig

type Reconfiguration_NewConfig struct {
	NewConfig *NetworkState_Config `protobuf:"bytes,3,opt,name=new_config,json=newConfig,proto3,oneof"`
}

type Reconfiguration_RemoveClient

type Reconfiguration_RemoveClient struct {
	RemoveClient uint64 `protobuf:"varint,2,opt,name=remove_client,json=removeClient,proto3,oneof"`
}

type Request

type Request struct {
	ClientId uint64 `protobuf:"varint,1,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"`
	ReqNo    uint64 `protobuf:"varint,2,opt,name=req_no,json=reqNo,proto3" json:"req_no,omitempty"`
	Data     []byte `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"`
	// contains filtered or unexported fields
}

func (*Request) Descriptor deprecated

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

Deprecated: Use Request.ProtoReflect.Descriptor instead.

func (*Request) GetClientId

func (x *Request) GetClientId() uint64

func (*Request) GetData

func (x *Request) GetData() []byte

func (*Request) GetReqNo

func (x *Request) GetReqNo() uint64

func (*Request) ProtoMessage

func (*Request) ProtoMessage()

func (*Request) ProtoReflect

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

func (*Request) Reset

func (x *Request) Reset()

func (*Request) String

func (x *Request) String() string

type RequestAck

type RequestAck struct {
	ClientId uint64 `protobuf:"varint,1,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"`
	ReqNo    uint64 `protobuf:"varint,2,opt,name=req_no,json=reqNo,proto3" json:"req_no,omitempty"`
	Digest   []byte `protobuf:"bytes,3,opt,name=digest,proto3" json:"digest,omitempty"`
	// contains filtered or unexported fields
}

func (*RequestAck) Descriptor deprecated

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

Deprecated: Use RequestAck.ProtoReflect.Descriptor instead.

func (*RequestAck) GetClientId

func (x *RequestAck) GetClientId() uint64

func (*RequestAck) GetDigest

func (x *RequestAck) GetDigest() []byte

func (*RequestAck) GetReqNo

func (x *RequestAck) GetReqNo() uint64

func (*RequestAck) ProtoMessage

func (*RequestAck) ProtoMessage()

func (*RequestAck) ProtoReflect

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

func (*RequestAck) Reset

func (x *RequestAck) Reset()

func (*RequestAck) String

func (x *RequestAck) String() string

type Suspect

type Suspect struct {
	Epoch uint64 `protobuf:"varint,1,opt,name=epoch,proto3" json:"epoch,omitempty"`
	// contains filtered or unexported fields
}

func (*Suspect) Descriptor deprecated

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

Deprecated: Use Suspect.ProtoReflect.Descriptor instead.

func (*Suspect) GetEpoch

func (x *Suspect) GetEpoch() uint64

func (*Suspect) ProtoMessage

func (*Suspect) ProtoMessage()

func (*Suspect) ProtoReflect

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

func (*Suspect) Reset

func (x *Suspect) Reset()

func (*Suspect) String

func (x *Suspect) String() string

type TEntry

type TEntry struct {
	SeqNo uint64 `protobuf:"varint,1,opt,name=seq_no,json=seqNo,proto3" json:"seq_no,omitempty"`
	Value []byte `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
	// contains filtered or unexported fields
}

TEntry indicates that a state transfer has been requested.

func (*TEntry) Descriptor deprecated

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

Deprecated: Use TEntry.ProtoReflect.Descriptor instead.

func (*TEntry) GetSeqNo

func (x *TEntry) GetSeqNo() uint64

func (*TEntry) GetValue

func (x *TEntry) GetValue() []byte

func (*TEntry) ProtoMessage

func (*TEntry) ProtoMessage()

func (*TEntry) ProtoReflect

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

func (*TEntry) Reset

func (x *TEntry) Reset()

func (*TEntry) String

func (x *TEntry) String() string

Jump to

Keyboard shortcuts

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