Index

A B C D E F G H I L M N O P Q R S T U V W 
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form

A

ACTIVE - Enum constant in enum io.microraft.RaftNodeStatus
A Raft node stays in this status when there is no ongoing membership change or a Raft group termination process.
ADD_LEARNER - Enum constant in enum io.microraft.MembershipChangeMode
Denotes that a new Raft endpoint will be added to the Raft group as a RaftRole.LEARNER.
ADD_OR_PROMOTE_TO_FOLLOWER - Enum constant in enum io.microraft.MembershipChangeMode
Denotes that either a new Raft endpoint will be added to the Raft group as a RaftRole.FOLLOWER, or an existing (i.e., RaftRole.LEARNER Raft endpoint in the Raft group will be promoted to the RaftRole.FOLLOWER role.
API_CALL - Enum constant in enum io.microraft.report.RaftNodeReport.RaftNodeReportReason
The report is created for a RaftNode.getReport() call.

B

build() - Method in class io.microraft.RaftConfig.RaftConfigBuilder
Builds the RaftConfig object.
build() - Method in interface io.microraft.RaftNode.RaftNodeBuilder
Builds and returns the RaftNode instance with the given settings.

C

CANDIDATE - Enum constant in enum io.microraft.RaftRole
When a follower starts a new leader election, it first turns into a candidate.
CannotReplicateException - Exception in io.microraft.exception
Thrown when an operation cannot be temporarily replicated.
CannotReplicateException(RaftEndpoint) - Constructor for exception io.microraft.exception.CannotReplicateException
Creates an instance of the exception.
changeMembership(RaftEndpoint, MembershipChangeMode, long) - Method in interface io.microraft.RaftNode
Replicates and commits the given membership change to the Raft group, if the given group members commit index is equal to the current group members commit index in the local Raft state.
createAppendEntriesFailureResponseBuilder() - Method in interface io.microraft.model.RaftModelFactory
 
createAppendEntriesRequestBuilder() - Method in interface io.microraft.model.RaftModelFactory
 
createAppendEntriesSuccessResponseBuilder() - Method in interface io.microraft.model.RaftModelFactory
 
createInstallSnapshotRequestBuilder() - Method in interface io.microraft.model.RaftModelFactory
 
createInstallSnapshotResponseBuilder() - Method in interface io.microraft.model.RaftModelFactory
 
createLogEntryBuilder() - Method in interface io.microraft.model.RaftModelFactory
 
createPreVoteRequestBuilder() - Method in interface io.microraft.model.RaftModelFactory
 
createPreVoteResponseBuilder() - Method in interface io.microraft.model.RaftModelFactory
 
createRaftEndpointPersistentStateBuilder() - Method in interface io.microraft.model.RaftModelFactory
 
createRaftGroupMembersViewBuilder() - Method in interface io.microraft.model.RaftModelFactory
 
createRaftTermPersistentStateBuilder() - Method in interface io.microraft.model.RaftModelFactory
 
createSnapshotChunkBuilder() - Method in interface io.microraft.model.RaftModelFactory
 
createSnapshotEntryBuilder() - Method in interface io.microraft.model.RaftModelFactory
 
createTriggerLeaderElectionRequestBuilder() - Method in interface io.microraft.model.RaftModelFactory
 
createUpdateRaftGroupMembersOpBuilder() - Method in interface io.microraft.model.RaftModelFactory
 
createVoteRequestBuilder() - Method in interface io.microraft.model.RaftModelFactory
 
createVoteResponseBuilder() - Method in interface io.microraft.model.RaftModelFactory
 

D

DEFAULT_APPEND_ENTRIES_REQUEST_BATCH_SIZE - Static variable in class io.microraft.RaftConfig
The default value for RaftConfig.appendEntriesRequestBatchSize.
DEFAULT_COMMIT_COUNT_TO_TAKE_SNAPSHOT - Static variable in class io.microraft.RaftConfig
The default value for RaftConfig.commitCountToTakeSnapshot.
DEFAULT_LEADER_ELECTION_TIMEOUT_MILLIS - Static variable in class io.microraft.RaftConfig
The default value for RaftConfig.leaderElectionTimeoutMillis.
DEFAULT_LEADER_HEARTBEAT_PERIOD_SECS - Static variable in class io.microraft.RaftConfig
The default value for RaftConfig.leaderHeartbeatPeriodSecs.
DEFAULT_LEADER_HEARTBEAT_TIMEOUT_SECS - Static variable in class io.microraft.RaftConfig
The default value for RaftConfig.leaderHeartbeatTimeoutSecs
DEFAULT_MAX_PENDING_LOG_ENTRY_COUNT - Static variable in class io.microraft.RaftConfig
The default value for RaftConfig.maxPendingLogEntryCount.
DEFAULT_RAFT_CONFIG - Static variable in class io.microraft.RaftConfig
The config object with default configuration.
DEFAULT_RAFT_NODE_REPORT_PUBLISH_PERIOD_SECS - Static variable in class io.microraft.RaftConfig
The default value for RaftConfig.raftNodeReportPublishPeriodSecs.
DEFAULT_TRANSFER_SNAPSHOTS_FROM_FOLLOWERS_ENABLED - Static variable in class io.microraft.RaftConfig
The default value for RaftConfig.transferSnapshotsFromFollowersEnabled
deleteSnapshotChunks(long, int) - Method in class io.microraft.persistence.NopRaftStore
 
deleteSnapshotChunks(long, int) - Method in interface io.microraft.persistence.RaftStore
Deletes persisted snapshot chunks at the given log index.
deserialize(byte[]) - Method in interface io.microraft.persistence.RaftStoreSerializer.Serializer
 

E

EVENTUAL_CONSISTENCY - Enum constant in enum io.microraft.QueryPolicy
Runs the query on the local state machine of any Raft node.
execute(Runnable) - Method in interface io.microraft.executor.RaftNodeExecutor
Executes the given task on the underlying platform.

F

flush() - Method in class io.microraft.persistence.NopRaftStore
 
flush() - Method in interface io.microraft.persistence.RaftStore
Forces all buffered (in any layer) Raft log changes to be written to the storage and returns after those changes are written.
FOLLOWER - Enum constant in enum io.microraft.RaftRole
Followers issue no requests on their own.

G

getAppendEntriesRequestBatchSize() - Method in class io.microraft.RaftConfig
 
getCommitCountToTakeSnapshot() - Method in class io.microraft.RaftConfig
 
getCommitIndex() - Method in exception io.microraft.exception.MismatchingRaftGroupMembersCommitIndexException
Returns the commit index of the current Raft group members.
getCommitIndex() - Method in interface io.microraft.Ordered
Returns the commit index at which the operation is executed / performed.
getCommitIndex() - Method in interface io.microraft.report.RaftLogStats
Returns index of the highest log entry known to be committed.
getCommittedMembers() - Method in interface io.microraft.RaftNode
Returns the last committed member list of the Raft group this Raft node belongs to.
getCommittedMembers() - Method in interface io.microraft.report.RaftNodeReport
Returns the last committed member list of the Raft group this Raft node belongs to.
getConfig() - Method in interface io.microraft.RaftNode
Returns the config object this Raft node is initialized with.
getEffectiveMembers() - Method in interface io.microraft.RaftNode
Returns the currently effective member list of the Raft group this Raft node belongs to.
getEffectiveMembers() - Method in interface io.microraft.report.RaftNodeReport
Returns the currently effective member list of the Raft group this Raft node belongs to.
getEndpoint() - Method in interface io.microraft.report.RaftNodeReport
Returns the local endpoint of the Raft node.
getFollowerMatchIndices() - Method in interface io.microraft.report.RaftLogStats
Returns the indices of the last known appended Raft log entries on the followers.
getGroupId() - Method in interface io.microraft.RaftNode
Returns the unique id of the Raft group which this Raft node belongs to.
getGroupId() - Method in interface io.microraft.report.RaftNodeReport
Returns the unique ID of the Raft group that this Raft node belongs to.
getHeartbeatTimestamps() - Method in interface io.microraft.report.RaftNodeReport
Returns timestamps of latest heartbeats sent by the non-leader nodes to the leader Raft node, including both RaftRole.FOLLOWER and RaftRole.LEARNER nodes.
getId() - Method in interface io.microraft.RaftEndpoint
Returns the unique identifier of the Raft endpoint.
getInitialGroupMembers() - Method in class io.microraft.persistence.RestoredRaftState
 
getInitialMembers() - Method in interface io.microraft.RaftNode
Returns the initial member list of the Raft group.
getInitialMembers() - Method in interface io.microraft.report.RaftNodeReport
Returns the initial members of the Raft group this Raft node belongs to.
getInstallSnapshotCount() - Method in interface io.microraft.report.RaftLogStats
Returns the number of snapshots installed by a Raft node.
getLastLogOrSnapshotIndex() - Method in interface io.microraft.report.RaftLogStats
Returns the last log entry index in the Raft log, either from the last log entry or from the last locally taken or installed snapshot.
getLastLogOrSnapshotTerm() - Method in interface io.microraft.report.RaftLogStats
Returns the last term in the Raft log, either from the last log entry or from the last locally taken or installed snapshot.
getLastSnapshotIndex() - Method in interface io.microraft.report.RaftLogStats
Returns the log index of the last locally taken or installed snapshot.
getLastSnapshotTerm() - Method in interface io.microraft.report.RaftLogStats
Returns the term of the last locally taken or installed snapshot.
getLeader() - Method in exception io.microraft.exception.RaftException
Returns the leader endpoint of the related Raft group, if available and known by the Raft node by the time this exception is thrown.
getLeaderElectionTimeoutMillis() - Method in class io.microraft.RaftConfig
 
getLeaderEndpoint() - Method in interface io.microraft.report.RaftTerm
Returns the known Raft leader endpoint in the current term, or null if unknown.
getLeaderHeartbeatPeriodSecs() - Method in class io.microraft.RaftConfig
 
getLeaderHeartbeatTimeoutSecs() - Method in class io.microraft.RaftConfig
 
getLeaderHeartbeatTimestamp() - Method in interface io.microraft.report.RaftNodeReport
Returns timestamp of the latest heartbeat received from the leader Raft node.
getLocalEndpoint() - Method in interface io.microraft.RaftNode
Returns the local endpoint of this Raft node.
getLocalEndpointPersistentState() - Method in class io.microraft.persistence.RestoredRaftState
 
getLog() - Method in interface io.microraft.report.RaftNodeReport
Returns statistics about a Raft node's local Raft log.
getLogEntries() - Method in class io.microraft.persistence.RestoredRaftState
 
getLogIndex() - Method in interface io.microraft.report.RaftGroupMembers
Returns the Raft log index that contains this Raft group member list.
getMajorityQuorumSize() - Method in interface io.microraft.report.RaftGroupMembers
Returns the majority quorum size of the Raft group member list.
getMaxPendingLogEntryCount() - Method in class io.microraft.RaftConfig
 
getMembers() - Method in exception io.microraft.exception.MismatchingRaftGroupMembersCommitIndexException
Returns the current Raft group members knwon by the Raft node
getMembers() - Method in interface io.microraft.report.RaftGroupMembers
Returns the member list of the Raft group.
getNewTermOperation() - Method in interface io.microraft.statemachine.StateMachine
Returns the operation to be appended after a new leader is elected in a new term.
getQuorumHeartbeatTimestamp() - Method in interface io.microraft.report.RaftNodeReport
Returns earliest heartbeat timestamp of the replication quorum.
getRaftNodeReportPublishPeriodSecs() - Method in class io.microraft.RaftConfig
 
getReason() - Method in interface io.microraft.report.RaftNodeReport
 
getReport() - Method in interface io.microraft.RaftNode
Returns a report object that contains information about this Raft node's local state related to the execution of the Raft consensus algorithm.
getResult() - Method in interface io.microraft.Ordered
Returns the actual result of the operation.
getRole() - Method in interface io.microraft.report.RaftNodeReport
Returns the role of the Raft node in the current term.
getSnapshotEntry() - Method in class io.microraft.persistence.RestoredRaftState
 
getStatus() - Method in interface io.microraft.RaftNode
Returns the current status of this Raft node.
getStatus() - Method in interface io.microraft.report.RaftNodeReport
Returns the status of the Raft node.
getTakeSnapshotCount() - Method in interface io.microraft.report.RaftLogStats
Returns the number of snapshots are taken by a Raft node.
getTerm() - Method in interface io.microraft.RaftNode
Returns the locally known term information.
getTerm() - Method in interface io.microraft.report.RaftNodeReport
Returns the locally known term information.
getTerm() - Method in interface io.microraft.report.RaftTerm
Returns the term this Raft node is currently at.
getTermPersistentState() - Method in class io.microraft.persistence.RestoredRaftState
 
getVotedEndpoint() - Method in interface io.microraft.report.RaftTerm
Returns the Raft endpoint that this Raft node has voted for in the current term, or null if none.
getVotingMembers() - Method in interface io.microraft.report.RaftGroupMembers
Returns voting members in the Raft group member list.
GROUP_MEMBERS_CHANGE - Enum constant in enum io.microraft.report.RaftNodeReport.RaftNodeReportReason
The report is created when a RaftNode moves to a new Raft group member list.

H

handle(RaftMessage) - Method in interface io.microraft.RaftNode
Asynchronously handles the given Raft message which can be either a Raft RPC request or a response, or silently ignores the given Raft message if this Raft node has already terminated or left the Raft group.

I

IndeterminateStateException - Exception in io.microraft.exception
A Raft leader may demote to the follower role after it appends an entry to its local Raft log, but before discovering its commit status.
IndeterminateStateException() - Constructor for exception io.microraft.exception.IndeterminateStateException
Creates an instance of the exception.
IndeterminateStateException(RaftEndpoint) - Constructor for exception io.microraft.exception.IndeterminateStateException
Creates an instance of the exception.
INITIAL - Enum constant in enum io.microraft.RaftNodeStatus
Initial status of a Raft node.
INSTALL_SNAPSHOT - Enum constant in enum io.microraft.report.RaftNodeReport.RaftNodeReportReason
The report is created when a RaftNode installs a snapshot that is sent by the current RaftRole.LEADER.
installSnapshot(long, List<Object>) - Method in interface io.microraft.statemachine.StateMachine
Installs the given snapshot chunks for the given commit index, which is same with the commit index on which the last snapshot is taken.
io.microraft - package io.microraft
 
io.microraft.exception - package io.microraft.exception
 
io.microraft.executor - package io.microraft.executor
 
io.microraft.lifecycle - package io.microraft.lifecycle
 
io.microraft.model - package io.microraft.model
 
io.microraft.persistence - package io.microraft.persistence
 
io.microraft.report - package io.microraft.report
 
io.microraft.statemachine - package io.microraft.statemachine
 
io.microraft.transport - package io.microraft.transport
 
isReachable(RaftEndpoint) - Method in interface io.microraft.transport.Transport
Returns true if the given endpoint is supposedly reachable by the time this method is called, false otherwise.
isTerminal(RaftNodeStatus) - Static method in enum io.microraft.RaftNodeStatus
Returns true if the given Raft node status is a terminal.
isTransferSnapshotsFromFollowersEnabled() - Method in class io.microraft.RaftConfig
 

L

LaggingCommitIndexException - Exception in io.microraft.exception
Thrown when a Raft node's current commit index is smaller than the commit index specified in a RaftNode.query(Object, QueryPolicy, Optional, Optional) call.
LaggingCommitIndexException(long, long, RaftEndpoint) - Constructor for exception io.microraft.exception.LaggingCommitIndexException
Creates an instance of this exception.
LEADER - Enum constant in enum io.microraft.RaftRole
A leader handles client requests, commit operations and orchestrates a Raft group.
LEADER_LEASE - Enum constant in enum io.microraft.QueryPolicy
Runs the query on the local state machine of the leader Raft node.
LEARNER - Enum constant in enum io.microraft.RaftRole
Learners issue no requests on their own.
LINEARIZABLE - Enum constant in enum io.microraft.QueryPolicy
Runs the query in a linearizable manner on the leader Raft node by using the algorithm defined in the Section: 6.4 Processing read-only queries more efficiently of the Raft dissertation.
logEntrySerializer() - Method in interface io.microraft.persistence.RaftStoreSerializer
 

M

MAX_LEARNER_COUNT - Static variable in interface io.microraft.report.RaftGroupMembers
The maximum number of RaftRole.LEARNER members allowed in the Raft group member list.
MembershipChangeMode - Enum in io.microraft
Types of membership changes that occur on Raft groups.
MismatchingRaftGroupMembersCommitIndexException - Exception in io.microraft.exception
Thrown when a membership change is triggered with an expected group members commit index that doesn't match the current group members commit index in the local state of the Raft group leader.
MismatchingRaftGroupMembersCommitIndexException(long, Collection<RaftEndpoint>) - Constructor for exception io.microraft.exception.MismatchingRaftGroupMembersCommitIndexException
Creates an instance of this exception

N

newBuilder() - Static method in class io.microraft.RaftConfig
Creates a new Raft config builder.
newBuilder() - Static method in interface io.microraft.RaftNode
Returns a new builder to configure RaftNode that is going to be created.
NopRaftStore - Class in io.microraft.persistence
Used when a Raft node works transiently (its state is not persisted).
NopRaftStore() - Constructor for class io.microraft.persistence.NopRaftStore
 
NotLeaderException - Exception in io.microraft.exception
Thrown when an operation, query, or a membership change is triggered on a non-leader Raft node.
NotLeaderException(RaftEndpoint, RaftEndpoint) - Constructor for exception io.microraft.exception.NotLeaderException
Creates an instance of this exception

O

onRaftNodeStart() - Method in interface io.microraft.lifecycle.RaftNodeLifecycleAware
Called by RaftNode during startup.
onRaftNodeTerminate() - Method in interface io.microraft.lifecycle.RaftNodeLifecycleAware
Called by RaftNode during termination.
Ordered<T> - Interface in io.microraft
Represents result of an operation that is triggered on a Raft node via one of the methods in the RaftNode interface, along with at which commit index the given operation is executed / performed.

P

PERIODIC - Enum constant in enum io.microraft.report.RaftNodeReport.RaftNodeReportReason
The report is created on a periodic reporting tick of the RaftNode.
persistAndFlushInitialGroupMembers(RaftGroupMembersView) - Method in class io.microraft.persistence.NopRaftStore
 
persistAndFlushInitialGroupMembers(RaftGroupMembersView) - Method in interface io.microraft.persistence.RaftStore
Persists and flushes the given initial Raft group members.
persistAndFlushLocalEndpoint(RaftEndpointPersistentState) - Method in class io.microraft.persistence.NopRaftStore
 
persistAndFlushLocalEndpoint(RaftEndpointPersistentState) - Method in interface io.microraft.persistence.RaftStore
Persists and flushes the given local Raft endpoint and its voting flag.
persistAndFlushTerm(RaftTermPersistentState) - Method in class io.microraft.persistence.NopRaftStore
 
persistAndFlushTerm(RaftTermPersistentState) - Method in interface io.microraft.persistence.RaftStore
Persists the term and the Raft endpoint that the local Raft node voted for in the given term.
persistLogEntries(List<LogEntry>) - Method in class io.microraft.persistence.NopRaftStore
 
persistLogEntries(List<LogEntry>) - Method in interface io.microraft.persistence.RaftStore
Persists the given log entries.
persistSnapshotChunk(SnapshotChunk) - Method in class io.microraft.persistence.NopRaftStore
 
persistSnapshotChunk(SnapshotChunk) - Method in interface io.microraft.persistence.RaftStore
Persists the given snapshot chunk.

Q

query(Object, QueryPolicy, Optional<Long>, Optional<Duration>) - Method in interface io.microraft.RaftNode
Executes the given query with the given query policy.
QueryPolicy - Enum in io.microraft
Policies to decide how a query operation will be executed on the state machine.

R

RaftConfig - Class in io.microraft
Contains the configuration parameters for MicroRaft's implementation.
RaftConfig(long, long, long, int, int, int, boolean, int) - Constructor for class io.microraft.RaftConfig
Creates a config object
RaftConfig.RaftConfigBuilder - Class in io.microraft
Builder for Raft config
RaftEndpoint - Interface in io.microraft
Represents an endpoint that participates to at least one Raft group and executes the Raft consensus algorithm with a RaftNode instance.
raftEndpointPersistentStateSerializer() - Method in interface io.microraft.persistence.RaftStoreSerializer
 
raftEndpointSerializer() - Method in interface io.microraft.persistence.RaftStoreSerializer
 
RaftException - Exception in io.microraft.exception
Base exception class for Raft-related exceptions.
RaftException(RaftEndpoint) - Constructor for exception io.microraft.exception.RaftException
Creates an instance of this exception
RaftException(String, RaftEndpoint) - Constructor for exception io.microraft.exception.RaftException
Creates an instance of this exception
RaftException(String, RaftEndpoint, Throwable) - Constructor for exception io.microraft.exception.RaftException
Creates an instance of this exception
RaftException(Throwable) - Constructor for exception io.microraft.exception.RaftException
Creates an instance of this exception
RaftGroupMembers - Interface in io.microraft.report
Represents member list of a Raft group with an index identifying on which log index the given member list is appended to the Raft log.
raftGroupMembersViewSerializer() - Method in interface io.microraft.persistence.RaftStoreSerializer
 
RaftLogStats - Interface in io.microraft.report
Contains statistics about a Raft node's Raft log.
RaftModel - Interface in io.microraft.model
The base interface for the objects that hit network and persistent storage.
RaftModelFactory - Interface in io.microraft.model
Used for creating RaftModel objects with the builder pattern.
RaftNode - Interface in io.microraft
A Raft node runs the Raft consensus algorithm as a member of a Raft group.
RaftNode.RaftNodeBuilder - Interface in io.microraft
The builder interface for configuring and creating Raft node instances.
RaftNodeExecutor - Interface in io.microraft.executor
The abstraction used by RaftNode to execute the Raft consensus algorithm with the Actor model.
RaftNodeLifecycleAware - Interface in io.microraft.lifecycle
Used by RaftNode to notify its components for its lifecycle-related changes, such as startup and termination.
RaftNodeReport - Interface in io.microraft.report
Contains information about a Raft node's local state related to the execution of the Raft consensus algorithm.
RaftNodeReport.RaftNodeReportReason - Enum in io.microraft.report
Denotes the reason for a given report
RaftNodeReportListener - Interface in io.microraft.report
Used for informing external systems about events related to the execution of the Raft consensus algorithm.
RaftNodeStatus - Enum in io.microraft
Statuses of a Raft node during its own and its Raft group's lifecycle.
RaftRole - Enum in io.microraft
The roles of Raft nodes as defined in the Raft consensus algorithm.
RaftStore - Interface in io.microraft.persistence
This interface is used for persisting only the internal state of the Raft consensus algorithm.
RaftStoreSerializer - Interface in io.microraft.persistence
Similarly to the RaftModelFactory, users of the RaftStore implementations must provide methods for converting a few of their types into binary data for persistence.
RaftStoreSerializer.Serializer<T> - Interface in io.microraft.persistence
 
RaftTerm - Interface in io.microraft.report
Contains a snapshot of a Raft node's current state in a term.
raftTermPersistentState() - Method in interface io.microraft.persistence.RaftStoreSerializer
 
REMOVE_MEMBER - Enum constant in enum io.microraft.MembershipChangeMode
Denotes that a Raft endpoint will be removed from the Raft group.
replicate(Object) - Method in interface io.microraft.RaftNode
Replicates, commits, and executes the given operation via this Raft node.
RestoredRaftState - Class in io.microraft.persistence
Contains restored state of a RaftNode.
RestoredRaftState(RaftEndpointPersistentState, RaftGroupMembersView, RaftTermPersistentState, SnapshotEntry, List<LogEntry>) - Constructor for class io.microraft.persistence.RestoredRaftState
 
ROLE_CHANGE - Enum constant in enum io.microraft.report.RaftNodeReport.RaftNodeReportReason
The report is created on when a RaftNode changes its role or discovers the leader in the current term.
runOperation(long, Object) - Method in interface io.microraft.statemachine.StateMachine
Executes the given operation on the state machine and returns result of the operation.

S

schedule(Runnable, long, TimeUnit) - Method in interface io.microraft.executor.RaftNodeExecutor
Schedules the task on the underlying platform to be executed after the given delay.
send(RaftEndpoint, RaftMessage) - Method in interface io.microraft.transport.Transport
Sends the given RaftMessage object to the given endpoint.
serialize(T) - Method in interface io.microraft.persistence.RaftStoreSerializer.Serializer
 
setAppendEntriesRequestBatchSize(int) - Method in class io.microraft.RaftConfig.RaftConfigBuilder
 
setClock(Clock) - Method in interface io.microraft.RaftNode.RaftNodeBuilder
Sets the Clock instance used by parts of the Raft algorithm.
setCommitCountToTakeSnapshot(int) - Method in class io.microraft.RaftConfig.RaftConfigBuilder
 
setConfig(RaftConfig) - Method in interface io.microraft.RaftNode.RaftNodeBuilder
Sets the Raft config.
setExecutor(RaftNodeExecutor) - Method in interface io.microraft.RaftNode.RaftNodeBuilder
Sets the Raft node executor object to be used for running submitted and scheduled tasks.
setGroupId(Object) - Method in interface io.microraft.RaftNode.RaftNodeBuilder
Sets the unique ID of the Raft group that this Raft node belongs to.
setInitialGroupMembers(Collection<RaftEndpoint>) - Method in interface io.microraft.RaftNode.RaftNodeBuilder
Sets the initial member list of the Raft group that the Raft node belongs to.
setInitialGroupMembers(Collection<RaftEndpoint>, Collection<RaftEndpoint>) - Method in interface io.microraft.RaftNode.RaftNodeBuilder
Sets the initial member list of the Raft group that the Raft node belongs to.
setLeaderElectionTimeoutMillis(long) - Method in class io.microraft.RaftConfig.RaftConfigBuilder
 
setLeaderHeartbeatPeriodSecs(long) - Method in class io.microraft.RaftConfig.RaftConfigBuilder
 
setLeaderHeartbeatTimeoutSecs(long) - Method in class io.microraft.RaftConfig.RaftConfigBuilder
 
setLocalEndpoint(RaftEndpoint) - Method in interface io.microraft.RaftNode.RaftNodeBuilder
Sets the endpoint of the Raft node being created.
setMaxPendingLogEntryCount(int) - Method in class io.microraft.RaftConfig.RaftConfigBuilder
 
setModelFactory(RaftModelFactory) - Method in interface io.microraft.RaftNode.RaftNodeBuilder
Sets the Raft model factory object to be used for creating Raft model objects.
setRaftNodeReportListener(RaftNodeReportListener) - Method in interface io.microraft.RaftNode.RaftNodeBuilder
Sets the Raft node report listener object to be completed about events related to the execution of the Raft consensus algorithm.
setRaftNodeReportPublishPeriodSecs(int) - Method in class io.microraft.RaftConfig.RaftConfigBuilder
 
setRandom(Random) - Method in interface io.microraft.RaftNode.RaftNodeBuilder
Sets the Random instance used in parts of the Raft algorithm.
setRestoredState(RestoredRaftState) - Method in interface io.microraft.RaftNode.RaftNodeBuilder
Sets the RestoredRaftState to be used for creating the Raft node instance.
setStateMachine(StateMachine) - Method in interface io.microraft.RaftNode.RaftNodeBuilder
Sets the state machine object to be used for execution of queries and committed operations.
setStore(RaftStore) - Method in interface io.microraft.RaftNode.RaftNodeBuilder
Sets the Raft state object to be used for persisting internal Raft state to stable storage.
setTransferSnapshotsFromFollowersEnabled(boolean) - Method in class io.microraft.RaftConfig.RaftConfigBuilder
 
setTransport(Transport) - Method in interface io.microraft.RaftNode.RaftNodeBuilder
Sets the transport object to be used for communicating with other Raft nodes.
snapshotChunkSerializer() - Method in interface io.microraft.persistence.RaftStoreSerializer
 
start() - Method in interface io.microraft.RaftNode
Triggers this Raft node to start executing the Raft consensus algorithm.
StateMachine - Interface in io.microraft.statemachine
The abstraction used by RaftNode instances to execute operations on the user-supplied state machines.
STATUS_CHANGE - Enum constant in enum io.microraft.report.RaftNodeReport.RaftNodeReportReason
The report is created when a RaftNode changes its RaftNodeStatus.
submit(Runnable) - Method in interface io.microraft.executor.RaftNodeExecutor
Submits the given task for execution.

T

TAKE_SNAPSHOT - Enum constant in enum io.microraft.report.RaftNodeReport.RaftNodeReportReason
The report is created when a RaftNode takes a snapshot of the StateMachine
takeSnapshot() - Method in interface io.microraft.RaftNode
Takes a new snapshot at the local RaftNode at the current commit index.
takeSnapshot(long, Consumer<Object>) - Method in interface io.microraft.statemachine.StateMachine
Takes a snapshot of the state machine for the given commit index which is the current commit index at the local Raft node.
terminate() - Method in interface io.microraft.RaftNode
Forcefully sets the status of this Raft node to RaftNodeStatus.TERMINATED and makes the Raft node stops executing the Raft consensus algorithm.
TERMINATED - Enum constant in enum io.microraft.RaftNodeStatus
A Raft node moves to this status either when it is removed from the Raft group member list, or it is being terminated on its own, for instance, because its JVM is shutting down.
toString() - Method in exception io.microraft.exception.CannotReplicateException
 
toString() - Method in exception io.microraft.exception.IndeterminateStateException
 
toString() - Method in exception io.microraft.exception.LaggingCommitIndexException
 
toString() - Method in exception io.microraft.exception.MismatchingRaftGroupMembersCommitIndexException
 
toString() - Method in exception io.microraft.exception.NotLeaderException
 
toString() - Method in exception io.microraft.exception.RaftException
 
toString() - Method in class io.microraft.RaftConfig.RaftConfigBuilder
 
toString() - Method in class io.microraft.RaftConfig
 
transferLeadership(RaftEndpoint) - Method in interface io.microraft.RaftNode
Transfers the leadership role to the given endpoint, if this Raft node is the current Raft group leader with the RaftNodeStatus.ACTIVE status and the given endpoint is in the committed member list of the Raft group.
Transport - Interface in io.microraft.transport
Used for communicating Raft nodes with each other.
truncateLogEntriesFrom(long) - Method in class io.microraft.persistence.NopRaftStore
 
truncateLogEntriesFrom(long) - Method in interface io.microraft.persistence.RaftStore
Rolls back the log by truncating all entries starting with the given index.
truncateLogEntriesUntil(long) - Method in class io.microraft.persistence.NopRaftStore
 
truncateLogEntriesUntil(long) - Method in interface io.microraft.persistence.RaftStore
MicroRaft calls this method after it successfully persists and flushes a snapshot.

U

UPDATING_RAFT_GROUP_MEMBER_LIST - Enum constant in enum io.microraft.RaftNodeStatus
A Raft node moves to this status when a Raft group membership change operation is appended to its Raft log and stays in this status until the membership change is either committed or reverted.

V

valueOf(String) - Static method in enum io.microraft.MembershipChangeMode
Returns the enum constant of this type with the specified name.
valueOf(String) - Static method in enum io.microraft.QueryPolicy
Returns the enum constant of this type with the specified name.
valueOf(String) - Static method in enum io.microraft.RaftNodeStatus
Returns the enum constant of this type with the specified name.
valueOf(String) - Static method in enum io.microraft.RaftRole
Returns the enum constant of this type with the specified name.
valueOf(String) - Static method in enum io.microraft.report.RaftNodeReport.RaftNodeReportReason
Returns the enum constant of this type with the specified name.
values() - Static method in enum io.microraft.MembershipChangeMode
Returns an array containing the constants of this enum type, in the order they are declared.
values() - Static method in enum io.microraft.QueryPolicy
Returns an array containing the constants of this enum type, in the order they are declared.
values() - Static method in enum io.microraft.RaftNodeStatus
Returns an array containing the constants of this enum type, in the order they are declared.
values() - Static method in enum io.microraft.RaftRole
Returns an array containing the constants of this enum type, in the order they are declared.
values() - Static method in enum io.microraft.report.RaftNodeReport.RaftNodeReportReason
Returns an array containing the constants of this enum type, in the order they are declared.

W

waitFor(long, Duration) - Method in interface io.microraft.RaftNode
The returned future is completed when the Raft node's last applied log index becomes greater than or equal to the given commit index.
A B C D E F G H I L M N O P Q R S T U V W 
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form