[
https://issues.apache.org/jira/browse/HDDS-15774?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Aditya Chechani reassigned HDDS-15774:
--------------------------------------
Assignee: Aditya Chechani
> Make SCM Ratis roles string parsing IPv6-safe
> ---------------------------------------------
>
> Key: HDDS-15774
> URL: https://issues.apache.org/jira/browse/HDDS-15774
> Project: Apache Ozone
> Issue Type: Task
> Reporter: Siyao Meng
> Assignee: Aditya Chechani
> Priority: Major
>
> SCMRatisServerImpl.getRatisRoles() (SCMRatisServerImpl.java:291-297) encodes
> each peer as a colon-delimited string host:ratisPort:ROLE:uuid:hostIP. At
> least five consumers re-split this on : and index fixed positions, so an IPv6
> literal in either the host or the IP field shifts every field:
> - StorageContainerManager.java:2188
> - GetScmRatisRolesSubcommand.java:76,95
> - StorageContainerServiceProviderImpl.java:141 (uses field [4] as the gRPC
> host IP for Recon snapshot download)
> - SafeModeCheckSubcommand.java:107,114
> This breaks leader detection, ozone admin scm roles, safe mode checks, and
> Recon snapshot download in IPv6 deployments.
> Proposed: bracket IPv6 literals in the encoded fields and parse with an
> IPv6-aware splitter, or replace the ad hoc colon protocol with a structured
> representation shared by producer and consumers. Add tests with IPv6 peers.
> Parent epic: HDDS-15763.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]