MCPcopy Create free account

hub / github.com/ahelwer/PaxosCluster / functions

Functions69 in github.com/ahelwer/PaxosCluster

↓ 7 callersMethodIsGreaterThan
Comparison operator
proposal/id.go:48
↓ 4 callersFunctionDefault
Returns the default proposal ID; will be outranked by every other proposal ID
proposal/id.go:25
↓ 4 callersMethodGetFirstUnchosenIndex
Returns the index of the first entry in the log for which no value has been chosen
replicatedlog/replicatedlog.go:73
↓ 4 callersFunctionrecoveryFileExists
Checks for existence of specified file in this role's recovery directory.
recovery/recovery.go:232
↓ 3 callersMethodGenerateNextProposalId
Generates & returns a new proposal ID
proposal/manager/manager.go:43
↓ 3 callersMethodIsChosen
Checks for chosen flag
proposal/id.go:43
↓ 3 callersMethodSetEntryAt
Sets the value of the log entry at the specified index
replicatedlog/replicatedlog.go:152
↓ 3 callersMethodSetPromiseRequirement
Mark whether a promise is required from a node before sending accept requests
clusterpeers/clusterpeers.go:194
↓ 3 callersFunctionidempotentCreateRecoveryDir
Creates recovery directory if it does not exist. This function is idempotent.
recovery/recovery.go:221
↓ 3 callersFunctionopenRecoveryFile
Opens the specified file from this role's recovery directory.
recovery/recovery.go:258
↓ 3 callersMethodupdateFirstUnchosenIndex
Updates the location of the first unchosen index; exclude MUST be locked before calling
replicatedlog/replicatedlog.go:81
↓ 3 callersMethodwrapReply
Wraps RPC return data to remove direct dependency of caller on net/rpc and improve testability
clusterpeers/clusterpeers.go:322
↓ 2 callersMethodBroadcastProposalRequest
Broadcasts a proposal phase request to the cluster
clusterpeers/clusterpeers.go:291
↓ 2 callersMethodGetEntryAt
Returns details of the log entry at the specified index
replicatedlog/replicatedlog.go:133
↓ 2 callersMethodGetMinProposalId
Returns the minimum proposal for this log; all lesser proposals should be rejected
replicatedlog/replicatedlog.go:49
↓ 2 callersMethodUpdateCurrentProposalId
(roleId uint64, id proposal.Id)
recovery/recovery.go:91
↓ 2 callersMethodUpdateLogRecord
Updates a record in the replicated log on disk.
recovery/recovery.go:146
↓ 2 callersFunctioncreateRecoveryFile
Creates or overwrites the specified file in this role's recovery directory.
recovery/recovery.go:248
↓ 2 callersMethodnotifyOfSuccess
Explicitly transfer chosen values to a role which is missing that information
proposer/proposer.go:247
↓ 2 callersFunctionrecoverProposalId
Reads proposal ID from the given file.
recovery/recovery.go:184
↓ 2 callersFunctionupdateProposalId
Updates the proposal ID value in the given file.
recovery/recovery.go:206
↓ 1 callersMethodAccept
(proposal *ProposalReq, reply *ProposalResp)
acceptor/acceptor.go:67
↓ 1 callersMethodBroadcastHeartbeat
Sends pulse to all nodes in the cluster
clusterpeers/clusterpeers.go:214
↓ 1 callersMethodBroadcastPrepareRequest
Broadcasts a prepare phase request to the cluster
clusterpeers/clusterpeers.go:264
↓ 1 callersMethodConnect
Initializes connections to cluster peers
clusterpeers/clusterpeers.go:120
↓ 1 callersMethodGetCurrentProposalId
Returns the most current proposal ID generated by this manager
proposal/manager/manager.go:35
↓ 1 callersMethodGetPeerCount
Returns number of peers in cluster
clusterpeers/clusterpeers.go:178
↓ 1 callersMethodGetSkipPromiseCount
Returns number of peers from which no promise is required
clusterpeers/clusterpeers.go:186
↓ 1 callersMethodListen
Sets server to listen on this node's port
clusterpeers/clusterpeers.go:97
↓ 1 callersMethodMarkAsChosen
Marks all log entries with the given proposalId as chosen, up to the given index
replicatedlog/replicatedlog.go:115
↓ 1 callersMethodNoMoreAcceptedPast
Certifies that no proposals have been accepted past the specified index
replicatedlog/replicatedlog.go:97
↓ 1 callersMethodNotifyOfSuccess
Directly notifies a specific node of a chosen value
clusterpeers/clusterpeers.go:311
↓ 1 callersMethodRecoverCurrentProposalId
(roleId uint64)
recovery/recovery.go:84
↓ 1 callersMethodRecoverLog
Recovers replicated log from disk.
recovery/recovery.go:114
↓ 1 callersMethodRecoverMinProposalId
Recovers the MinProposalId from disk.
recovery/recovery.go:99
↓ 1 callersMethodRetrieveAddresses
Reads the list of peers from a file on disk
recovery/recovery.go:52
↓ 1 callersMethodString
Custom string formatter for ID
proposal/id.go:59
↓ 1 callersMethodUpdateMinProposalId
(roleId uint64, id proposal.Id)
recovery/recovery.go:106
↓ 1 callersMethodconnectionManager
Triages connection complaints, organizes repair attempts
clusterpeers/clusterpeers.go:136
↓ 1 callersMethodelectLeader
Elects self leader if not receiving heartbeat signal from role with higher ID
proposer/proposer.go:66
↓ 1 callersMethodemit
Emits chosen value to the registered callback function (currently just print to console)
replicatedlog/replicatedlog.go:184
↓ 1 callersMethodestablishConnection
Attempts to re-connect to the specified role
clusterpeers/clusterpeers.go:155
↓ 1 callersMethodfinalize
Finishes all writes and permanently locks in preparation for shutdown
recovery/recovery.go:44
↓ 1 callersMethodisLeaderState
Role is leader; will furnish client requests
proposer/proposer.go:79
↓ 1 callersMethodisNotLeaderState
Role is not leader; will reject client requests
proposer/proposer.go:46
↓ 1 callersMethodpaxos
Executes single round of Paxos protocol
proposer/proposer.go:97
↓ 1 callersMethodprocessAllAccepts
(request acceptor.ProposalReq, peerCount uint64, received map[uint64]bool, endpoint <-chan clusterpeers.Respon
proposer/proposer.go:223
↓ 1 callersMethodrecvAccepts
Receves replies to proposal
proposer/proposer.go:190
↓ 1 callersMethodrecvPromises
Receves replies to prepare requests
proposer/proposer.go:152
FunctionChosen
Returns a proposal ID flagged as chosen
proposal/id.go:34
FunctionConstruct
Constructor for ProposerRole
proposer/proposer.go:24
FunctionConstruct
Constructor for AcceptorRole
acceptor/acceptor.go:18
FunctionConstructCluster
(roleId uint64, disk *recovery.Manager)
clusterpeers/clusterpeers.go:34
FunctionConstructLog
Creates a new replicated log instance, using data from cold storage files
replicatedlog/replicatedlog.go:27
FunctionConstructManager
Creates disk access manager for backup & recovery files
recovery/recovery.go:30
FunctionConstructProposalId
Creates a proposal ID from a role and sequence number
proposal/id.go:16
FunctionConstructProposalManager
Constructor for the proposal manager
proposal/manager/manager.go:19
FunctionDeserializeFromCSV
Recover proposal ID from an array of strings
proposal/id.go:79
MethodGenerateProposalIdToBeat
Generates & returns a new proposal ID which will outrank the given proposal ID
proposal/manager/manager.go:57
MethodHeartbeat
Catches heartbeat signal as a remote procedure call
proposer/proposer.go:274
FunctionLaunchNode
Initialize proposer and acceptor roles
role/role.go:15
MethodPrepare
(req *PrepareReq, reply *PrepareResp)
acceptor/acceptor.go:38
MethodReplicate
Receives requests from client
proposer/proposer.go:289
FunctionRun
Starts proposer role state machine
proposer/proposer.go:38
FunctionSerializeToCSV
Convert to array of strings for storage in CSV file
proposal/id.go:68
MethodSuccess
(info *SuccessNotify, reply *int)
acceptor/acceptor.go:86
MethodTerminate
Receives termination command
proposer/proposer.go:305
MethodUpdateMinProposalId
Updates minProposalId to the greater of itself and the provided proposalId
replicatedlog/replicatedlog.go:57
Functionmain
()
simplecluster.go:11