lowring

package
v0.0.0-...-76a793e Latest Latest
Warning

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

Go to latest
Published: Jul 6, 2018 License: BSD-3-Clause Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Node

type Node uint16
const NilNode Node = math.MaxUint16

type Ring

type Ring struct {
	NodeToCapacity              []int
	NodeToGroup                 []int
	GroupToGroup                []int
	ReplicaToPartitionToNode    [][]Node
	MaxPartitionCount           int
	Rebalanced                  time.Time
	ReplicaToPartitionToWait    [][]uint16
	ReassignmentWait            uint16
	MaxReplicaReassignableCount int8
	ReplicaToNodeToPartitions   [][][]uint32
}

func New

func New(replicaCount int) *Ring

func (*Ring) AddNode

func (ring *Ring) AddNode(capacity int, group int) Node

func (*Ring) FillReplicaToNodeToPartitions

func (ring *Ring) FillReplicaToNodeToPartitions()

func (*Ring) Rebalance

func (ring *Ring) Rebalance(randIntn func(int) int)

func (*Ring) SetReplicaCount

func (ring *Ring) SetReplicaCount(v int)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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