You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ratis.apache.org by "Lokesh Jain (Jira)" <ji...@apache.org> on 2019/09/03 10:26:00 UTC

[jira] [Commented] (RATIS-661) Add call in state machine to handle group removal

    [ https://issues.apache.org/jira/browse/RATIS-661?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16921316#comment-16921316 ] 

Lokesh Jain commented on RATIS-661:
-----------------------------------

[~szetszwo] Thanks for reviewing and committing the patch! 

| getGroupInfos covers groupExists, although it will fail with GroupMismatchException when a group does not exist.

I mean an api which can tell that the group is in Closing or Closed state. We can do it using the StateMachine#notifyGroupRemove api but I was thinking if we could add this functionality in the RaftServer class? If the api returns null then group does not exist in any state in the raft server.

> Add call in state machine to handle group removal
> -------------------------------------------------
>
>                 Key: RATIS-661
>                 URL: https://issues.apache.org/jira/browse/RATIS-661
>             Project: Ratis
>          Issue Type: New Feature
>          Components: API
>            Reporter: Lokesh Jain
>            Assignee: Lokesh Jain
>            Priority: Major
>             Fix For: 0.4.0
>
>         Attachments: RATIS-661.001.patch, RATIS-661.002.patch, RATIS-661.003.patch, RATIS-661.004.patch, RATIS-661.005.patch
>
>
> Currently during RaftServerProxy#groupRemoveAsync there is no way for stateMachine to know that the RaftGroup will be removed. This Jira aims to add a call in the stateMachine to handle group removal.
> It also changes the logic of groupRemoval api to remove the RaftServerImpl from the RaftServerProxy#impls map after the shutdown is complete. This is required to synchronize the removal with the corresponding api of RaftServer#getGroupIds. RaftServer#getGroupIds uses the RaftServerProxy#impls map to get the groupIds.



--
This message was sent by Atlassian Jira
(v8.3.2#803003)