Log an error message when an AppendEntriesReply arrives beyond the ElectionTimeout
period. This may help detect cases where messages are not being processed
fast enough by the actor system. This particular condition can cause a Leader to
become an IsolatedLeader even if the remote Follower is receiving heartbeats.
Change-Id: Id6a797820b63cb4f18c3d1bbd2781e72674aa9d8
Signed-off-by: Moiz Raja <moraja@cisco.com>
return this;
}
+ if(followerLogInformation.timeSinceLastActivity() >
+ context.getConfigParams().getElectionTimeOutInterval().toMillis()) {
+ LOG.error("{} : handleAppendEntriesReply delayed beyond election timeout, " +
+ "appendEntriesReply : {}, timeSinceLastActivity : {}, lastApplied : {}, commitIndex : {}",
+ logName(), appendEntriesReply, followerLogInformation.timeSinceLastActivity(),
+ context.getLastApplied(), context.getCommitIndex());
+ }
+
followerLogInformation.markFollowerActive();
if (appendEntriesReply.isSuccess()) {
©2013 OpenDaylight, A Linux Foundation Collaborative Project. All Rights Reserved.
OpenDaylight is a registered trademark of The OpenDaylight Project, Inc.
Linux Foundation and OpenDaylight are registered trademarks of the Linux Foundation.
Linux is a registered trademark of Linus Torvalds.