X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-akka-raft%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fraft%2Fmessages%2FAppendEntries.java;h=d2ea0c50cd6203fd6b142793612e4e0546000185;hp=81981062177510641c08edb243016075f388ae0f;hb=3997099eb61b0f2adc47f7a85952c324e9de223f;hpb=3f2221486de63178fbfbb43508ce9466c0b23b73 diff --git a/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/messages/AppendEntries.java b/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/messages/AppendEntries.java index 8198106217..d2ea0c50cd 100644 --- a/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/messages/AppendEntries.java +++ b/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/messages/AppendEntries.java @@ -50,14 +50,18 @@ public class AppendEntries extends AbstractRaftRPC { // leader's commitIndex private final long leaderCommit; + // index which has been replicated successfully to all followers, -1 if none + private final long replicatedToAllIndex; + public AppendEntries(long term, String leaderId, long prevLogIndex, - long prevLogTerm, List entries, long leaderCommit) { + long prevLogTerm, List entries, long leaderCommit, long replicatedToAllIndex) { super(term); this.leaderId = leaderId; this.prevLogIndex = prevLogIndex; this.prevLogTerm = prevLogTerm; this.entries = entries; this.leaderCommit = leaderCommit; + this.replicatedToAllIndex = replicatedToAllIndex; } private void writeObject(ObjectOutputStream out) throws IOException { @@ -102,18 +106,19 @@ public class AppendEntries extends AbstractRaftRPC { return leaderCommit; } + public long getReplicatedToAllIndex() { + return replicatedToAllIndex; + } + + @Override public String toString() { - final StringBuilder sb = - new StringBuilder("AppendEntries{"); - sb.append("term=").append(getTerm()); - sb.append("leaderId='").append(leaderId).append('\''); - sb.append(", prevLogIndex=").append(prevLogIndex); - sb.append(", prevLogTerm=").append(prevLogTerm); - sb.append(", entries=").append(entries); - sb.append(", leaderCommit=").append(leaderCommit); - sb.append('}'); - return sb.toString(); + StringBuilder builder = new StringBuilder(); + builder.append("AppendEntries [term=").append(term).append(", leaderId=").append(leaderId) + .append(", prevLogIndex=").append(prevLogIndex).append(", prevLogTerm=").append(prevLogTerm) + .append(", entries=").append(entries).append(", leaderCommit=").append(leaderCommit) + .append(", replicatedToAllIndex=").append(replicatedToAllIndex).append("]"); + return builder.toString(); } public Object toSerializable() { @@ -203,7 +208,7 @@ public class AppendEntries extends AbstractRaftRPC { from.getPrevLogIndex(), from.getPrevLogTerm(), logEntryList, - from.getLeaderCommit()); + from.getLeaderCommit(), -1); return to; }