Bug 8206: Prevent decr follower next index beyong -1 83/54783/6
authorTom Pantelis <tompantelis@gmail.com>
Tue, 11 Apr 2017 13:39:49 +0000 (09:39 -0400)
committerTom Pantelis <tompantelis@gmail.com>
Wed, 12 Apr 2017 11:55:04 +0000 (11:55 +0000)
commitfbeed3e25ef80495c67bfe1698daf44b88fb10ff
tree323dc8ce3a687d4d8d88e99b7b7e41a9147587ff
parent2ca8370df84aca0adcecac1d072bbe515038b3f2
Bug 8206: Prevent decr follower next index beyong -1

If a follower's next index is already -1, we shouldn't decrement it
further, ie -1 is the lowest allowed value. This can result in AbstractLeader
continuously decrementing and logging an info message while in the
process of sending an install snapshot.

member-3-shard-default-config (Leader): follower member-1-shard-default-config last log term 2 conflicts with the leader's 3 - dec next index to -2

Modified decrNextIndex to return a boolean if next index was decremented
which is checked  by AbstractLeader.

Change-Id: I29454d4e71a7f9128b3b47f6a4e3403615c2c8d2
Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/FollowerLogInformation.java
opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/FollowerLogInformationImpl.java
opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/behaviors/AbstractLeader.java
opendaylight/md-sal/sal-akka-raft/src/test/java/org/opendaylight/controller/cluster/raft/FollowerLogInformationImplTest.java