public class LogIndex extends ObjectId
For any two LogIndex instances, A
is an ancestor of C
reachable through parent edges in the graph if A.index < C.index
.
LogIndex provides a performance optimization for Ketch, the same information
can be obtained from RevWalk
.
Index values are only valid within a single KetchLeader
instance
after it has won an election. By restricting scope to a single leader new
leaders do not need to traverse the entire history to determine the next
index
for new proposals. This differs from Raft, where leader
election uses the log index and the term number to determine which replica
holds a sufficiently up-to-date log. Since Ketch uses Git objects for storage
of its replicated log, it keeps the term number as Raft does but uses
standard Git operations to imply the log index.
Round.runAsync(AnyObjectId)
bumps the index as each new round is
constructed.
Modifier and Type | Method and Description |
---|---|
String |
describeForLog() |
long |
getIndex() |
String |
toString() |
equals, fromRaw, fromRaw, fromRaw, fromRaw, fromString, fromString, isId, toObjectId, toString, zeroId
public long getIndex()
public String describeForLog()
public String toString()
toString
in class AnyObjectId
Copyright © 2016 Eclipse JGit Project. All rights reserved.