final case class AppendStatus(leaderAppendResult: LogAppendSuccess, appended: Map[NodeId, AppendEntriesResponse], appendedCoords: Set[LogCoords], clusterSize: Int, committed: Set[LogCoords], errorAfterAppend: Option[Exception] = None) extends Product with Serializable
Represents the current state of the cluster following an append
- appended
a map of the cluster ids to a flag indicating whether or not the node has appended the entry
- appendedCoords
the log coords which have been appended on the leader
- clusterSize
the size of the cluster
- committed
the coordinates of committed entries on the leader after quarum has ack'd
- errorAfterAppend
A means of letting observers know that a log append error has occurred, perhaps due to a leader change
- Alphabetic
- By Inheritance
- AppendStatus
- Serializable
- Serializable
- Product
- Equals
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
AppendStatus(leaderAppendResult: LogAppendSuccess, appended: Map[NodeId, AppendEntriesResponse], appendedCoords: Set[LogCoords], clusterSize: Int, committed: Set[LogCoords], errorAfterAppend: Option[Exception] = None)
- appended
a map of the cluster ids to a flag indicating whether or not the node has appended the entry
- appendedCoords
the log coords which have been appended on the leader
- clusterSize
the size of the cluster
- committed
the coordinates of committed entries on the leader after quarum has ack'd
- errorAfterAppend
A means of letting observers know that a log append error has occurred, perhaps due to a leader change
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def allCommitted: Boolean
- val appended: Map[NodeId, AppendEntriesResponse]
- val appendedCoords: Set[LogCoords]
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
- val clusterSize: Int
- val committed: Set[LogCoords]
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- val errorAfterAppend: Option[Exception]
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
isComplete: Boolean
Meant to signal that we have all that we expect to -- acks from EVERY node in the cluster and the entries are committed.
Meant to signal that we have all that we expect to -- acks from EVERY node in the cluster and the entries are committed.
If a node is down, OR A LEADER CHANGE HAPPENS, CAUSING NOT ALL NODES TO ACK AN APPEND, then this may never be true.
In the case, however, that not all nodes respond, we will notice the 'errorAfterAppend' field become set
- returns
true if we've received all the messages expected
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- val leaderAppendResult: LogAppendSuccess
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def numberOfPeersContainingCommittedIndex: Int
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AppendStatus → AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
- def withCommit(coords: LogCoords): AppendStatus
- def withResult(from: NodeId, response: AppendEntriesResponse): AppendStatus