[
https://issues.apache.org/jira/browse/HDDS-10875?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
ChenXi updated HDDS-10875:
--------------------------
Target Version/s: 1.4.1
> XceiverRatisServer#getRaftPeersInPipeline should be called before
> XceiverRatisServer#removeGroup
> ------------------------------------------------------------------------------------------------
>
> Key: HDDS-10875
> URL: https://issues.apache.org/jira/browse/HDDS-10875
> Project: Apache Ozone
> Issue Type: Bug
> Components: DN
> Affects Versions: 1.4.0
> Reporter: Ivan Andika
> Assignee: Ivan Andika
> Priority: Major
> Labels: pull-request-available
> Fix For: 1.5.0
>
>
> From the
> https://issues.apache.org/jira/browse/HDDS-10750?focusedCommentId=17847435&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-17847435
> in HDDS-10750, it's found GroupMismatchException are thrown during the
> ClosePipelineCommandHandler
> This is because {{XceiverRatisServer#removeGroup}} is called before
> {{{}XceiverRatisServer#getRaftPeersInPipeline{}}}, which causes
> {{XceiverRatisServer#getRaftPeersInPipeline}} to throw
> {{GroupMismatchException}} when it's trying to get the
> {{RaftServerProxy#getDivision}} since the group has been removed.
> Therefore, we need to first call the
> {{XceiverRatisServer#getRaftPeersInPipeline}} before calling
> {{{}XceiverRatisServer#removeGroup{}}}. On top of that, we can catch the
> {{GroupMismatchException}} in case the group has been removed by earlier
> {{ClosePipelineCommandHandler}} in other datanode for the same pipeline.
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]