[
https://issues.apache.org/jira/browse/RATIS-2084?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17845244#comment-17845244
]
Song Ziyang commented on RATIS-2084:
------------------------------------
[~szetszwo] could you please take a look at this issue?
Shall we enforce the client to clear out for the failed reconfiguration request
before retry, or we modify the install-snapshot to allow leader recover the
correct next-index under this situation?
> IllegalStateException when install snapshot from leader
> -------------------------------------------------------
>
> Key: RATIS-2084
> URL: https://issues.apache.org/jira/browse/RATIS-2084
> Project: Ratis
> Issue Type: Bug
> Components: gRPC, snapshot
> Affects Versions: 3.0.1
> Reporter: Song Ziyang
> Priority: Major
> Attachments: image-2024-05-10-16-12-25-436.png
>
>
> !image-2024-05-10-16-12-25-436.png|width=888,height=376!
>
> The event sequence that triggered IllegalStateException:
> # Raft Group (A, B, C) with leader A.
> # Client cli adds a new Peer D to the group.
> # Leader A sends snapshot and logs to D, and peer D is successfully
> bootstrapped.
> # The configuration change log (A,B,C,D) is *NOT* committed while B
> timeouts, starts an election, becomes the new leader.
> # Client cli re-send the add-peer-D request to the newly elected leader B.
> # B thoughts the D is a new peer with next-index = 0, tries to send the
> snapshot to D. D already had the snapshot, so the IllegalStateException
> occurred.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)