Documentation
¶
Index ¶
- Variables
- func RegisterAcceptorServiceServer(s grpc.ServiceRegistrar, srv AcceptorServiceServer)
- func RegisterProposerServiceServer(s grpc.ServiceRegistrar, srv ProposerServiceServer)
- type AcceptRequest
- type AcceptResponse
- type AcceptedRequest
- type AcceptedResponse
- type AcceptorServiceClient
- type AcceptorServiceServer
- type Ballot
- type PrepareRequest
- type PrepareResponse
- type PromiseRequest
- type PromiseResponse
- type Proposal
- type ProposerServiceClient
- type ProposerServiceServer
- type Px1A
- type Px1B
- type Px2A
- type Px2B
- type RejectRequest
- type RejectResponse
- type UnimplementedAcceptorServiceServer
- type UnimplementedProposerServiceServer
- func (UnimplementedProposerServiceServer) Accepted(context.Context, *AcceptedRequest) (*AcceptedResponse, error)
- func (UnimplementedProposerServiceServer) Promise(context.Context, *PromiseRequest) (*PromiseResponse, error)
- func (UnimplementedProposerServiceServer) Reject(context.Context, *RejectRequest) (*RejectResponse, error)
- type UnsafeAcceptorServiceServer
- type UnsafeProposerServiceServer
Constants ¶
This section is empty.
Variables ¶
var AcceptorService_ServiceDesc = grpc.ServiceDesc{ ServiceName: "degitx.paxos.AcceptorService", HandlerType: (*AcceptorServiceServer)(nil), Methods: []grpc.MethodDesc{ { MethodName: "Prepare", Handler: _AcceptorService_Prepare_Handler, }, { MethodName: "Accept", Handler: _AcceptorService_Accept_Handler, }, }, Streams: []grpc.StreamDesc{}, Metadata: "acceptor.proto", }
AcceptorService_ServiceDesc is the grpc.ServiceDesc for AcceptorService service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)
var File_acceptor_proto protoreflect.FileDescriptor
var File_paxos_proto protoreflect.FileDescriptor
var File_proposer_proto protoreflect.FileDescriptor
var ProposerService_ServiceDesc = grpc.ServiceDesc{ ServiceName: "degitx.paxos.ProposerService", HandlerType: (*ProposerServiceServer)(nil), Methods: []grpc.MethodDesc{ { MethodName: "Promise", Handler: _ProposerService_Promise_Handler, }, { MethodName: "Accepted", Handler: _ProposerService_Accepted_Handler, }, { MethodName: "Reject", Handler: _ProposerService_Reject_Handler, }, }, Streams: []grpc.StreamDesc{}, Metadata: "proposer.proto", }
ProposerService_ServiceDesc is the grpc.ServiceDesc for ProposerService service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)
Functions ¶
func RegisterAcceptorServiceServer ¶
func RegisterAcceptorServiceServer(s grpc.ServiceRegistrar, srv AcceptorServiceServer)
func RegisterProposerServiceServer ¶
func RegisterProposerServiceServer(s grpc.ServiceRegistrar, srv ProposerServiceServer)
Types ¶
type AcceptRequest ¶
type AcceptRequest struct { Msg *Px2A `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"` // contains filtered or unexported fields }
AcceptRequest to acceptor
func (*AcceptRequest) Descriptor
deprecated
func (*AcceptRequest) Descriptor() ([]byte, []int)
Deprecated: Use AcceptRequest.ProtoReflect.Descriptor instead.
func (*AcceptRequest) GetMsg ¶
func (x *AcceptRequest) GetMsg() *Px2A
func (*AcceptRequest) ProtoMessage ¶
func (*AcceptRequest) ProtoMessage()
func (*AcceptRequest) ProtoReflect ¶
func (x *AcceptRequest) ProtoReflect() protoreflect.Message
func (*AcceptRequest) Reset ¶
func (x *AcceptRequest) Reset()
func (*AcceptRequest) String ¶
func (x *AcceptRequest) String() string
type AcceptResponse ¶
type AcceptResponse struct {
// contains filtered or unexported fields
}
AcceptResponse from acceptor
func (*AcceptResponse) Descriptor
deprecated
func (*AcceptResponse) Descriptor() ([]byte, []int)
Deprecated: Use AcceptResponse.ProtoReflect.Descriptor instead.
func (*AcceptResponse) ProtoMessage ¶
func (*AcceptResponse) ProtoMessage()
func (*AcceptResponse) ProtoReflect ¶
func (x *AcceptResponse) ProtoReflect() protoreflect.Message
func (*AcceptResponse) Reset ¶
func (x *AcceptResponse) Reset()
func (*AcceptResponse) String ¶
func (x *AcceptResponse) String() string
type AcceptedRequest ¶
type AcceptedRequest struct { Msg *Px2B `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"` // contains filtered or unexported fields }
AcceptedRequest to proposer
func (*AcceptedRequest) Descriptor
deprecated
func (*AcceptedRequest) Descriptor() ([]byte, []int)
Deprecated: Use AcceptedRequest.ProtoReflect.Descriptor instead.
func (*AcceptedRequest) GetMsg ¶
func (x *AcceptedRequest) GetMsg() *Px2B
func (*AcceptedRequest) ProtoMessage ¶
func (*AcceptedRequest) ProtoMessage()
func (*AcceptedRequest) ProtoReflect ¶
func (x *AcceptedRequest) ProtoReflect() protoreflect.Message
func (*AcceptedRequest) Reset ¶
func (x *AcceptedRequest) Reset()
func (*AcceptedRequest) String ¶
func (x *AcceptedRequest) String() string
type AcceptedResponse ¶
type AcceptedResponse struct {
// contains filtered or unexported fields
}
AcceptedResponse from proposer
func (*AcceptedResponse) Descriptor
deprecated
func (*AcceptedResponse) Descriptor() ([]byte, []int)
Deprecated: Use AcceptedResponse.ProtoReflect.Descriptor instead.
func (*AcceptedResponse) ProtoMessage ¶
func (*AcceptedResponse) ProtoMessage()
func (*AcceptedResponse) ProtoReflect ¶
func (x *AcceptedResponse) ProtoReflect() protoreflect.Message
func (*AcceptedResponse) Reset ¶
func (x *AcceptedResponse) Reset()
func (*AcceptedResponse) String ¶
func (x *AcceptedResponse) String() string
type AcceptorServiceClient ¶
type AcceptorServiceClient interface { // Prepare message Prepare(ctx context.Context, in *PrepareRequest, opts ...grpc.CallOption) (*PrepareResponse, error) // Accept message Accept(ctx context.Context, in *AcceptRequest, opts ...grpc.CallOption) (*AcceptResponse, error) }
AcceptorServiceClient is the client API for AcceptorService service.
For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
func NewAcceptorServiceClient ¶
func NewAcceptorServiceClient(cc grpc.ClientConnInterface) AcceptorServiceClient
type AcceptorServiceServer ¶
type AcceptorServiceServer interface { // Prepare message Prepare(context.Context, *PrepareRequest) (*PrepareResponse, error) // Accept message Accept(context.Context, *AcceptRequest) (*AcceptResponse, error) // contains filtered or unexported methods }
AcceptorServiceServer is the server API for AcceptorService service. All implementations must embed UnimplementedAcceptorServiceServer for forward compatibility
type Ballot ¶
type Ballot struct { Ballot uint32 `protobuf:"varint,1,opt,name=ballot,proto3" json:"ballot,omitempty"` // contains filtered or unexported fields }
Ballot number of proposals in Paxos algorithm
func (*Ballot) Descriptor
deprecated
func (*Ballot) ProtoMessage ¶
func (*Ballot) ProtoMessage()
func (*Ballot) ProtoReflect ¶
func (x *Ballot) ProtoReflect() protoreflect.Message
type PrepareRequest ¶
type PrepareRequest struct { Msg *Px1A `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"` // contains filtered or unexported fields }
PrepareRequest to acceptor
func (*PrepareRequest) Descriptor
deprecated
func (*PrepareRequest) Descriptor() ([]byte, []int)
Deprecated: Use PrepareRequest.ProtoReflect.Descriptor instead.
func (*PrepareRequest) GetMsg ¶
func (x *PrepareRequest) GetMsg() *Px1A
func (*PrepareRequest) ProtoMessage ¶
func (*PrepareRequest) ProtoMessage()
func (*PrepareRequest) ProtoReflect ¶
func (x *PrepareRequest) ProtoReflect() protoreflect.Message
func (*PrepareRequest) Reset ¶
func (x *PrepareRequest) Reset()
func (*PrepareRequest) String ¶
func (x *PrepareRequest) String() string
type PrepareResponse ¶
type PrepareResponse struct {
// contains filtered or unexported fields
}
PrepareResponse from acceptor
func (*PrepareResponse) Descriptor
deprecated
func (*PrepareResponse) Descriptor() ([]byte, []int)
Deprecated: Use PrepareResponse.ProtoReflect.Descriptor instead.
func (*PrepareResponse) ProtoMessage ¶
func (*PrepareResponse) ProtoMessage()
func (*PrepareResponse) ProtoReflect ¶
func (x *PrepareResponse) ProtoReflect() protoreflect.Message
func (*PrepareResponse) Reset ¶
func (x *PrepareResponse) Reset()
func (*PrepareResponse) String ¶
func (x *PrepareResponse) String() string
type PromiseRequest ¶
type PromiseRequest struct { Msg *Px1B `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"` // contains filtered or unexported fields }
PromiseRequest to proposer
func (*PromiseRequest) Descriptor
deprecated
func (*PromiseRequest) Descriptor() ([]byte, []int)
Deprecated: Use PromiseRequest.ProtoReflect.Descriptor instead.
func (*PromiseRequest) GetMsg ¶
func (x *PromiseRequest) GetMsg() *Px1B
func (*PromiseRequest) ProtoMessage ¶
func (*PromiseRequest) ProtoMessage()
func (*PromiseRequest) ProtoReflect ¶
func (x *PromiseRequest) ProtoReflect() protoreflect.Message
func (*PromiseRequest) Reset ¶
func (x *PromiseRequest) Reset()
func (*PromiseRequest) String ¶
func (x *PromiseRequest) String() string
type PromiseResponse ¶
type PromiseResponse struct {
// contains filtered or unexported fields
}
PromiseResponse from proposer
func (*PromiseResponse) Descriptor
deprecated
func (*PromiseResponse) Descriptor() ([]byte, []int)
Deprecated: Use PromiseResponse.ProtoReflect.Descriptor instead.
func (*PromiseResponse) ProtoMessage ¶
func (*PromiseResponse) ProtoMessage()
func (*PromiseResponse) ProtoReflect ¶
func (x *PromiseResponse) ProtoReflect() protoreflect.Message
func (*PromiseResponse) Reset ¶
func (x *PromiseResponse) Reset()
func (*PromiseResponse) String ¶
func (x *PromiseResponse) String() string
type Proposal ¶
type Proposal struct { Ballot *Ballot `protobuf:"bytes,1,opt,name=ballot,proto3" json:"ballot,omitempty"` Proposer uint32 `protobuf:"varint,2,opt,name=Proposer,proto3" json:"Proposer,omitempty"` // contains filtered or unexported fields }
Proposal for Paxos protocol
func (*Proposal) Descriptor
deprecated
func (*Proposal) GetProposer ¶
func (*Proposal) ProtoMessage ¶
func (*Proposal) ProtoMessage()
func (*Proposal) ProtoReflect ¶
func (x *Proposal) ProtoReflect() protoreflect.Message
type ProposerServiceClient ¶
type ProposerServiceClient interface { // Promise message Promise(ctx context.Context, in *PromiseRequest, opts ...grpc.CallOption) (*PromiseResponse, error) // Accepted message Accepted(ctx context.Context, in *AcceptedRequest, opts ...grpc.CallOption) (*AcceptedResponse, error) // Reject message Reject(ctx context.Context, in *RejectRequest, opts ...grpc.CallOption) (*RejectResponse, error) }
ProposerServiceClient is the client API for ProposerService service.
For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
func NewProposerServiceClient ¶
func NewProposerServiceClient(cc grpc.ClientConnInterface) ProposerServiceClient
type ProposerServiceServer ¶
type ProposerServiceServer interface { // Promise message Promise(context.Context, *PromiseRequest) (*PromiseResponse, error) // Accepted message Accepted(context.Context, *AcceptedRequest) (*AcceptedResponse, error) // Reject message Reject(context.Context, *RejectRequest) (*RejectResponse, error) // contains filtered or unexported methods }
ProposerServiceServer is the server API for ProposerService service. All implementations must embed UnimplementedProposerServiceServer for forward compatibility
type Px1A ¶
type Px1A struct { Proposal *Proposal `protobuf:"bytes,1,opt,name=proposal,proto3" json:"proposal,omitempty"` // contains filtered or unexported fields }
Px1A - Paxos 1A message sent from proposer to acceptor
func (*Px1A) Descriptor
deprecated
func (*Px1A) GetProposal ¶
func (*Px1A) ProtoMessage ¶
func (*Px1A) ProtoMessage()
func (*Px1A) ProtoReflect ¶
func (x *Px1A) ProtoReflect() protoreflect.Message
type Px1B ¶
type Px1B struct { Max *Proposal `protobuf:"bytes,1,opt,name=max,proto3" json:"max,omitempty"` Acc *Proposal `protobuf:"bytes,2,opt,name=acc,proto3" json:"acc,omitempty"` Value []byte `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"` // contains filtered or unexported fields }
Px1B - Paxos 1B message sent from acceptor to proposer, it contains maximum and accepted proposal and optional value
func (*Px1B) Descriptor
deprecated
func (*Px1B) ProtoMessage ¶
func (*Px1B) ProtoMessage()
func (*Px1B) ProtoReflect ¶
func (x *Px1B) ProtoReflect() protoreflect.Message
type Px2A ¶
type Px2A struct { Proposal *Proposal `protobuf:"bytes,1,opt,name=proposal,proto3" json:"proposal,omitempty"` Value []byte `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` // contains filtered or unexported fields }
Px2A - Paxos 2A message sent from proposer to acceptor
func (*Px2A) Descriptor
deprecated
func (*Px2A) GetProposal ¶
func (*Px2A) ProtoMessage ¶
func (*Px2A) ProtoMessage()
func (*Px2A) ProtoReflect ¶
func (x *Px2A) ProtoReflect() protoreflect.Message
type Px2B ¶
type Px2B struct { Ballot *Ballot `protobuf:"bytes,1,opt,name=ballot,proto3" json:"ballot,omitempty"` // contains filtered or unexported fields }
Px2B - Paxos 2B message sent from acceptor to proposer
func (*Px2B) Descriptor
deprecated
func (*Px2B) ProtoMessage ¶
func (*Px2B) ProtoMessage()
func (*Px2B) ProtoReflect ¶
func (x *Px2B) ProtoReflect() protoreflect.Message
type RejectRequest ¶
type RejectRequest struct { Ballot *Ballot `protobuf:"bytes,1,opt,name=ballot,proto3" json:"ballot,omitempty"` // contains filtered or unexported fields }
RejectRequest to proposer
func (*RejectRequest) Descriptor
deprecated
func (*RejectRequest) Descriptor() ([]byte, []int)
Deprecated: Use RejectRequest.ProtoReflect.Descriptor instead.
func (*RejectRequest) GetBallot ¶
func (x *RejectRequest) GetBallot() *Ballot
func (*RejectRequest) ProtoMessage ¶
func (*RejectRequest) ProtoMessage()
func (*RejectRequest) ProtoReflect ¶
func (x *RejectRequest) ProtoReflect() protoreflect.Message
func (*RejectRequest) Reset ¶
func (x *RejectRequest) Reset()
func (*RejectRequest) String ¶
func (x *RejectRequest) String() string
type RejectResponse ¶
type RejectResponse struct {
// contains filtered or unexported fields
}
RejectResponse from proposer
func (*RejectResponse) Descriptor
deprecated
func (*RejectResponse) Descriptor() ([]byte, []int)
Deprecated: Use RejectResponse.ProtoReflect.Descriptor instead.
func (*RejectResponse) ProtoMessage ¶
func (*RejectResponse) ProtoMessage()
func (*RejectResponse) ProtoReflect ¶
func (x *RejectResponse) ProtoReflect() protoreflect.Message
func (*RejectResponse) Reset ¶
func (x *RejectResponse) Reset()
func (*RejectResponse) String ¶
func (x *RejectResponse) String() string
type UnimplementedAcceptorServiceServer ¶
type UnimplementedAcceptorServiceServer struct { }
UnimplementedAcceptorServiceServer must be embedded to have forward compatible implementations.
func (UnimplementedAcceptorServiceServer) Accept ¶
func (UnimplementedAcceptorServiceServer) Accept(context.Context, *AcceptRequest) (*AcceptResponse, error)
func (UnimplementedAcceptorServiceServer) Prepare ¶
func (UnimplementedAcceptorServiceServer) Prepare(context.Context, *PrepareRequest) (*PrepareResponse, error)
type UnimplementedProposerServiceServer ¶
type UnimplementedProposerServiceServer struct { }
UnimplementedProposerServiceServer must be embedded to have forward compatible implementations.
func (UnimplementedProposerServiceServer) Accepted ¶
func (UnimplementedProposerServiceServer) Accepted(context.Context, *AcceptedRequest) (*AcceptedResponse, error)
func (UnimplementedProposerServiceServer) Promise ¶
func (UnimplementedProposerServiceServer) Promise(context.Context, *PromiseRequest) (*PromiseResponse, error)
func (UnimplementedProposerServiceServer) Reject ¶
func (UnimplementedProposerServiceServer) Reject(context.Context, *RejectRequest) (*RejectResponse, error)
type UnsafeAcceptorServiceServer ¶
type UnsafeAcceptorServiceServer interface {
// contains filtered or unexported methods
}
UnsafeAcceptorServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to AcceptorServiceServer will result in compilation errors.
type UnsafeProposerServiceServer ¶
type UnsafeProposerServiceServer interface {
// contains filtered or unexported methods
}
UnsafeProposerServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to ProposerServiceServer will result in compilation errors.