...

Package etcdraft

import "github.com/hyperledger/fabric/protos/orderer/etcdraft"
Overview
Index

Overview ▾

Index ▾

Constants
func Marshal(md *ConfigMetadata) ([]byte, error)
type BlockMetadata
    func (*BlockMetadata) Descriptor() ([]byte, []int)
    func (m *BlockMetadata) GetConsenterIds() []uint64
    func (m *BlockMetadata) GetNextConsenterId() uint64
    func (m *BlockMetadata) GetRaftIndex() uint64
    func (*BlockMetadata) ProtoMessage()
    func (m *BlockMetadata) Reset()
    func (m *BlockMetadata) String() string
    func (m *BlockMetadata) XXX_DiscardUnknown()
    func (m *BlockMetadata) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
    func (dst *BlockMetadata) XXX_Merge(src proto.Message)
    func (m *BlockMetadata) XXX_Size() int
    func (m *BlockMetadata) XXX_Unmarshal(b []byte) error
type ConfigMetadata
    func (*ConfigMetadata) Descriptor() ([]byte, []int)
    func (m *ConfigMetadata) GetConsenters() []*Consenter
    func (m *ConfigMetadata) GetOptions() *Options
    func (*ConfigMetadata) ProtoMessage()
    func (m *ConfigMetadata) Reset()
    func (m *ConfigMetadata) String() string
    func (m *ConfigMetadata) XXX_DiscardUnknown()
    func (m *ConfigMetadata) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
    func (dst *ConfigMetadata) XXX_Merge(src proto.Message)
    func (m *ConfigMetadata) XXX_Size() int
    func (m *ConfigMetadata) XXX_Unmarshal(b []byte) error
type ConsensusTypeMetadataFactory
    func (dogf ConsensusTypeMetadataFactory) NewMessage() proto.Message
type Consenter
    func (*Consenter) Descriptor() ([]byte, []int)
    func (m *Consenter) GetClientTlsCert() []byte
    func (m *Consenter) GetHost() string
    func (m *Consenter) GetPort() uint32
    func (m *Consenter) GetServerTlsCert() []byte
    func (*Consenter) ProtoMessage()
    func (m *Consenter) Reset()
    func (m *Consenter) String() string
    func (m *Consenter) XXX_DiscardUnknown()
    func (m *Consenter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
    func (dst *Consenter) XXX_Merge(src proto.Message)
    func (m *Consenter) XXX_Size() int
    func (m *Consenter) XXX_Unmarshal(b []byte) error
type Options
    func (*Options) Descriptor() ([]byte, []int)
    func (m *Options) GetElectionTick() uint32
    func (m *Options) GetHeartbeatTick() uint32
    func (m *Options) GetMaxInflightBlocks() uint32
    func (m *Options) GetSnapshotIntervalSize() uint32
    func (m *Options) GetTickInterval() string
    func (*Options) ProtoMessage()
    func (m *Options) Reset()
    func (m *Options) String() string
    func (m *Options) XXX_DiscardUnknown()
    func (m *Options) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
    func (dst *Options) XXX_Merge(src proto.Message)
    func (m *Options) XXX_Size() int
    func (m *Options) XXX_Unmarshal(b []byte) error

Package files

configuration.go configuration.pb.go

Constants

TypeKey is the string with which this consensus implementation is identified across Fabric.

const TypeKey = "etcdraft"

func Marshal

func Marshal(md *ConfigMetadata) ([]byte, error)

Marshal serializes this implementation's proto messages. It is called by the encoder package during the creation of the Orderer ConfigGroup.

type BlockMetadata

BlockMetadata stores data used by the Raft OSNs when coordinating with each other, to be serialized into block meta dta field and used after failres and restarts.

type BlockMetadata struct {
    // Maintains a mapping between the cluster's OSNs
    // and their Raft IDs.
    ConsenterIds []uint64 `protobuf:"varint,1,rep,packed,name=consenter_ids,json=consenterIds,proto3" json:"consenter_ids,omitempty"`
    // Carries the Raft ID value that will be assigned
    // to the next OSN that will join this cluster.
    NextConsenterId uint64 `protobuf:"varint,2,opt,name=next_consenter_id,json=nextConsenterId,proto3" json:"next_consenter_id,omitempty"`
    // Index of etcd/raft entry for current block.
    RaftIndex            uint64   `protobuf:"varint,3,opt,name=raft_index,json=raftIndex,proto3" json:"raft_index,omitempty"`
    XXX_NoUnkeyedLiteral struct{} `json:"-"`
    XXX_unrecognized     []byte   `json:"-"`
    XXX_sizecache        int32    `json:"-"`
}

func (*BlockMetadata) Descriptor

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

func (*BlockMetadata) GetConsenterIds

func (m *BlockMetadata) GetConsenterIds() []uint64

func (*BlockMetadata) GetNextConsenterId

func (m *BlockMetadata) GetNextConsenterId() uint64

func (*BlockMetadata) GetRaftIndex

func (m *BlockMetadata) GetRaftIndex() uint64

func (*BlockMetadata) ProtoMessage

func (*BlockMetadata) ProtoMessage()

func (*BlockMetadata) Reset

func (m *BlockMetadata) Reset()

func (*BlockMetadata) String

func (m *BlockMetadata) String() string

func (*BlockMetadata) XXX_DiscardUnknown

func (m *BlockMetadata) XXX_DiscardUnknown()

func (*BlockMetadata) XXX_Marshal

func (m *BlockMetadata) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*BlockMetadata) XXX_Merge

func (dst *BlockMetadata) XXX_Merge(src proto.Message)

func (*BlockMetadata) XXX_Size

func (m *BlockMetadata) XXX_Size() int

func (*BlockMetadata) XXX_Unmarshal

func (m *BlockMetadata) XXX_Unmarshal(b []byte) error

type ConfigMetadata

ConfigMetadata is serialized and set as the value of ConsensusType.Metadata in a channel configuration when the ConsensusType.Type is set "etcdraft".

type ConfigMetadata struct {
    Consenters           []*Consenter `protobuf:"bytes,1,rep,name=consenters,proto3" json:"consenters,omitempty"`
    Options              *Options     `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"`
    XXX_NoUnkeyedLiteral struct{}     `json:"-"`
    XXX_unrecognized     []byte       `json:"-"`
    XXX_sizecache        int32        `json:"-"`
}

func (*ConfigMetadata) Descriptor

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

func (*ConfigMetadata) GetConsenters

func (m *ConfigMetadata) GetConsenters() []*Consenter

func (*ConfigMetadata) GetOptions

func (m *ConfigMetadata) GetOptions() *Options

func (*ConfigMetadata) ProtoMessage

func (*ConfigMetadata) ProtoMessage()

func (*ConfigMetadata) Reset

func (m *ConfigMetadata) Reset()

func (*ConfigMetadata) String

func (m *ConfigMetadata) String() string

func (*ConfigMetadata) XXX_DiscardUnknown

func (m *ConfigMetadata) XXX_DiscardUnknown()

func (*ConfigMetadata) XXX_Marshal

func (m *ConfigMetadata) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ConfigMetadata) XXX_Merge

func (dst *ConfigMetadata) XXX_Merge(src proto.Message)

func (*ConfigMetadata) XXX_Size

func (m *ConfigMetadata) XXX_Size() int

func (*ConfigMetadata) XXX_Unmarshal

func (m *ConfigMetadata) XXX_Unmarshal(b []byte) error

type ConsensusTypeMetadataFactory

ConsensusTypeMetadataFactory allows this implementation's proto messages to register their type with the orderer's proto messages. This is needed for protolator to work.

type ConsensusTypeMetadataFactory struct{}

func (ConsensusTypeMetadataFactory) NewMessage

func (dogf ConsensusTypeMetadataFactory) NewMessage() proto.Message

NewMessage implements the Orderer.ConsensusTypeMetadataFactory interface.

type Consenter

Consenter represents a consenting node (i.e. replica).

type Consenter struct {
    Host                 string   `protobuf:"bytes,1,opt,name=host,proto3" json:"host,omitempty"`
    Port                 uint32   `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
    ClientTlsCert        []byte   `protobuf:"bytes,3,opt,name=client_tls_cert,json=clientTlsCert,proto3" json:"client_tls_cert,omitempty"`
    ServerTlsCert        []byte   `protobuf:"bytes,4,opt,name=server_tls_cert,json=serverTlsCert,proto3" json:"server_tls_cert,omitempty"`
    XXX_NoUnkeyedLiteral struct{} `json:"-"`
    XXX_unrecognized     []byte   `json:"-"`
    XXX_sizecache        int32    `json:"-"`
}

func (*Consenter) Descriptor

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

func (*Consenter) GetClientTlsCert

func (m *Consenter) GetClientTlsCert() []byte

func (*Consenter) GetHost

func (m *Consenter) GetHost() string

func (*Consenter) GetPort

func (m *Consenter) GetPort() uint32

func (*Consenter) GetServerTlsCert

func (m *Consenter) GetServerTlsCert() []byte

func (*Consenter) ProtoMessage

func (*Consenter) ProtoMessage()

func (*Consenter) Reset

func (m *Consenter) Reset()

func (*Consenter) String

func (m *Consenter) String() string

func (*Consenter) XXX_DiscardUnknown

func (m *Consenter) XXX_DiscardUnknown()

func (*Consenter) XXX_Marshal

func (m *Consenter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Consenter) XXX_Merge

func (dst *Consenter) XXX_Merge(src proto.Message)

func (*Consenter) XXX_Size

func (m *Consenter) XXX_Size() int

func (*Consenter) XXX_Unmarshal

func (m *Consenter) XXX_Unmarshal(b []byte) error

type Options

Options to be specified for all the etcd/raft nodes. These can be modified on a per-channel basis.

type Options struct {
    TickInterval      string `protobuf:"bytes,1,opt,name=tick_interval,json=tickInterval,proto3" json:"tick_interval,omitempty"`
    ElectionTick      uint32 `protobuf:"varint,2,opt,name=election_tick,json=electionTick,proto3" json:"election_tick,omitempty"`
    HeartbeatTick     uint32 `protobuf:"varint,3,opt,name=heartbeat_tick,json=heartbeatTick,proto3" json:"heartbeat_tick,omitempty"`
    MaxInflightBlocks uint32 `protobuf:"varint,4,opt,name=max_inflight_blocks,json=maxInflightBlocks,proto3" json:"max_inflight_blocks,omitempty"`
    // Take snapshot when cumulative data exceeds certain size in bytes.
    SnapshotIntervalSize uint32   `protobuf:"varint,5,opt,name=snapshot_interval_size,json=snapshotIntervalSize,proto3" json:"snapshot_interval_size,omitempty"`
    XXX_NoUnkeyedLiteral struct{} `json:"-"`
    XXX_unrecognized     []byte   `json:"-"`
    XXX_sizecache        int32    `json:"-"`
}

func (*Options) Descriptor

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

func (*Options) GetElectionTick

func (m *Options) GetElectionTick() uint32

func (*Options) GetHeartbeatTick

func (m *Options) GetHeartbeatTick() uint32

func (*Options) GetMaxInflightBlocks

func (m *Options) GetMaxInflightBlocks() uint32

func (*Options) GetSnapshotIntervalSize

func (m *Options) GetSnapshotIntervalSize() uint32

func (*Options) GetTickInterval

func (m *Options) GetTickInterval() string

func (*Options) ProtoMessage

func (*Options) ProtoMessage()

func (*Options) Reset

func (m *Options) Reset()

func (*Options) String

func (m *Options) String() string

func (*Options) XXX_DiscardUnknown

func (m *Options) XXX_DiscardUnknown()

func (*Options) XXX_Marshal

func (m *Options) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Options) XXX_Merge

func (dst *Options) XXX_Merge(src proto.Message)

func (*Options) XXX_Size

func (m *Options) XXX_Size() int

func (*Options) XXX_Unmarshal

func (m *Options) XXX_Unmarshal(b []byte) error