Documentation ¶
Index ¶
- Constants
- Variables
- func ImmigrationTxnFromCap(exe *dispatcher.Executor, vd *VarDispatcher, stateChange TxnLocalStateChange, ...)
- func NewFrame(v *Var, parent *frame, positions *common.Positions, ...) *frame
- type Ballot
- type BallotBuilder
- type Subscriptions
- type Txn
- type TxnLocalStateChange
- type Var
- func (v *Var) ReceiveTxn(action *localAction, enqueuedAt time.Time)
- func (v *Var) ReceiveTxnOutcome(action *localAction, enqueuedAt time.Time)
- func (v *Var) SetCurFrame(f *frame)
- func (v *Var) Status(sc *status.StatusConsumer)
- func (v *Var) TxnGloballyComplete(action *localAction, enqueuedAt time.Time)
- type VarDispatcher
- type VarManager
- func (vm *VarManager) ApplyToVar(fun func(*Var), createIfMissing bool, uuid *common.VarUUId)
- func (vm *VarManager) ConnectedRMs(servers map[common.RMId]sconn.ServerConnection)
- func (vm *VarManager) ConnectionEstablished(conn sconn.ServerConnection, servers map[common.RMId]sconn.ServerConnection, ...)
- func (vm *VarManager) ConnectionLost(rmId common.RMId, servers map[common.RMId]sconn.ServerConnection)
- func (vm *VarManager) ScheduleCallback(interval time.Duration, fun tw.Event)
- func (vm *VarManager) SetInactive(v *Var)
- func (vm *VarManager) Status(sc *status.StatusConsumer)
- func (vm *VarManager) TopologyChanged(topology *configuration.Topology, done func(bool))
- type Vote
Constants ¶
View Source
const ( Commit = Vote(msgs.VOTE_COMMIT) AbortBadRead = Vote(msgs.VOTE_ABORTBADREAD) AbortDeadlock = Vote(msgs.VOTE_ABORTDEADLOCK) )
Variables ¶
Functions ¶
func ImmigrationTxnFromCap ¶
func ImmigrationTxnFromCap(exe *dispatcher.Executor, vd *VarDispatcher, stateChange TxnLocalStateChange, reader *txnreader.TxnReader, varCaps msgs.Var_List, logger log.Logger)
Types ¶
type Ballot ¶
type BallotBuilder ¶
type BallotBuilder struct { *Ballot Clock *vc.VectorClockMutable }
func NewBallotBuilder ¶
func NewBallotBuilder(vUUId *common.VarUUId, vote Vote, clock *vc.VectorClockMutable, subscriptions *Subscriptions) *BallotBuilder
func (*BallotBuilder) CreateBadReadBallot ¶
func (ballot *BallotBuilder) CreateBadReadBallot(txnId *common.TxnId, actions *txnreader.TxnActions) *Ballot
func (*BallotBuilder) ToBallot ¶
func (ballot *BallotBuilder) ToBallot() *Ballot
type Subscriptions ¶
type Subscriptions struct {
// contains filtered or unexported fields
}
func NewSubscriptions ¶
func NewSubscriptions(vm *VarManager) *Subscriptions
func NewSubscriptionsFromData ¶
func NewSubscriptionsFromData(vm *VarManager, data []byte) (*Subscriptions, error)
func (*Subscriptions) AsData ¶
func (s *Subscriptions) AsData() []byte
func (*Subscriptions) Committed ¶
func (s *Subscriptions) Committed(action *localAction)
func (*Subscriptions) IsDirty ¶
func (s *Subscriptions) IsDirty() bool
func (*Subscriptions) Status ¶
func (s *Subscriptions) Status(sc *status.StatusConsumer)
func (*Subscriptions) Subscribers ¶
func (s *Subscriptions) Subscribers() common.TxnIds
func (*Subscriptions) Verify ¶
func (s *Subscriptions) Verify()
type Txn ¶
type Txn struct { Id *common.TxnId TxnReader *txnreader.TxnReader // contains filtered or unexported fields }
func TxnFromReader ¶
func TxnFromReader(exe *dispatcher.Executor, vd *VarDispatcher, stateChange TxnLocalStateChange, ourRMId common.RMId, reader *txnreader.TxnReader, logger log.Logger) *Txn
func (*Txn) BallotOutcomeReceived ¶
Callback (from network/paxos)
func (*Txn) LocallyComplete ¶
func (talc *Txn) LocallyComplete()
Callback (from var-dispatcher (frames) back into txn)
func (*Txn) Status ¶
func (txn *Txn) Status(sc *status.StatusConsumer)
type TxnLocalStateChange ¶
type Var ¶
func NewVar ¶
func NewVar(uuid *common.VarUUId, exe *dispatcher.Executor, db *db.Databases, vm *VarManager) *Var
func VarFromData ¶
func VarFromData(data []byte, exe *dispatcher.Executor, db *db.Databases, vm *VarManager) (*Var, error)
func (*Var) ReceiveTxnOutcome ¶
func (*Var) Status ¶
func (v *Var) Status(sc *status.StatusConsumer)
type VarDispatcher ¶
type VarDispatcher struct { dispatcher.Dispatcher // contains filtered or unexported fields }
func NewVarDispatcher ¶
func NewVarDispatcher(count uint8, rmId common.RMId, cm connectionmanager.ConnectionManager, db *db.Databases, lc localconnection.LocalConnection, logger log.Logger) *VarDispatcher
func (*VarDispatcher) ApplyToVar ¶
func (vd *VarDispatcher) ApplyToVar(fun func(*Var), createIfMissing bool, vUUId *common.VarUUId)
func (*VarDispatcher) Status ¶
func (vd *VarDispatcher) Status(sc *status.StatusConsumer)
type VarManager ¶
type VarManager struct { localconnection.LocalConnection Topology *configuration.Topology RMId common.RMId Servers map[common.RMId]sconn.ServerConnection RollAllowed bool // contains filtered or unexported fields }
func NewVarManager ¶
func NewVarManager(exe *dispatcher.Executor, rmId common.RMId, cm connectionmanager.ConnectionManager, db *db.Databases, lc localconnection.LocalConnection, logger log.Logger) *VarManager
func (*VarManager) ApplyToVar ¶
func (vm *VarManager) ApplyToVar(fun func(*Var), createIfMissing bool, uuid *common.VarUUId)
func (*VarManager) ConnectedRMs ¶
func (vm *VarManager) ConnectedRMs(servers map[common.RMId]sconn.ServerConnection)
func (*VarManager) ConnectionEstablished ¶
func (vm *VarManager) ConnectionEstablished(conn sconn.ServerConnection, servers map[common.RMId]sconn.ServerConnection, done func())
func (*VarManager) ConnectionLost ¶
func (vm *VarManager) ConnectionLost(rmId common.RMId, servers map[common.RMId]sconn.ServerConnection)
func (*VarManager) ScheduleCallback ¶
func (vm *VarManager) ScheduleCallback(interval time.Duration, fun tw.Event)
func (*VarManager) SetInactive ¶
func (vm *VarManager) SetInactive(v *Var)
var.VarLifecycle interface
func (*VarManager) Status ¶
func (vm *VarManager) Status(sc *status.StatusConsumer)
func (*VarManager) TopologyChanged ¶
func (vm *VarManager) TopologyChanged(topology *configuration.Topology, done func(bool))
Click to show internal directories.
Click to hide internal directories.