paxos

package
v0.0.0-...-5782b8f Latest Latest
Warning

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

Go to latest
Published: Oct 4, 2022 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

View Source
const CHAN_BUFFER_SIZE = 200000
View Source
const COMMIT_GRACE_PERIOD = 10 * 1e9 // 10 second(s)
View Source
const FALSE = uint8(0)
View Source
const SLEEP_TIME_NS = 1e6
View Source
const TRUE = uint8(1)

Variables

This section is empty.

Functions

This section is empty.

Types

type Instance

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

type InstanceStatus

type InstanceStatus int
const (
	NOT_STARTED InstanceStatus = iota
	PREPARING
	PREPARED
	ACCEPTED
	COMMITTED
	IGNORING
)

type LeaderBookkeeping

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

type Replica

type Replica struct {
	learner.Learner
	proposalmanager.AcceptorQrmInfo

	*genericsmr.Replica // extends a generic Paxos replica

	IsLeader bool // does this replica think it is the leader

	Shutdown bool
	// contains filtered or unexported fields
}

func NewReplica

func NewReplica(replica *genericsmr.Replica, id int, peerAddrList []string, Isleader bool, thrifty bool, exec bool, lread bool,
	dreply bool, durable bool, batchWait int, f int, storageLoc string, emulatedSS bool, emulatedWriteTime time.Duration,
	deadTime int32, sendToFastestQrm bool, minimalAcceptors bool, mappedProposers bool, mappedPropsPerInst int32, pam bool, pamloc string) *Replica

func (*Replica) BatchingEnabled

func (r *Replica) BatchingEnabled() bool

func (*Replica) BeTheLeader

func (*Replica) CloseUp

func (r *Replica) CloseUp()

func (*Replica) GetEmptyInstance

func (r *Replica) GetEmptyInstance() *Instance

Jump to

Keyboard shortcuts

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