kerneltime commented on PR #10473:
URL: https://github.com/apache/ozone/pull/10473#issuecomment-4677191510

   Thanks for the review @szetszwo. You're right — 160KB is too big to land as 
one piece.
   
   I'm closing this in favor of a 4-PR sequence that splits the change along 
the natural code-path boundaries you described:
   
   1. **HDDS-15514. Pass Ratis peer addresses as hostnames** — OM↔OM and 
SCM↔SCM Ratis paths use `hostname:port` strings into `RaftPeer.setAddress` 
instead of resolved IPs, so gRPC's `DnsNameResolver` can re-resolve on its own. 
No flag, no classifier, smallest stone, lands first.
   2. **HDDS-15514. DNS refresh on connection failure for Client→OM** — 
introduces the shared `ConnectionFailureUtils` classifier, the 
`ozone.client.failover.resolve-needed` flag, and the 
`OMProxyInfo.refreshAddressIfChanged` + 
`OMFailoverProxyProviderBase.shouldRetry` wiring. Per your suggestion, OM lands 
first among the proxy-provider PRs.
   3. **HDDS-15514. DNS refresh on connection failure for OM→SCM** — the same 
shape against `SCMFailoverProxyProviderBase` / `SCMProxyInfo`.
   4. **HDDS-15514. DNS refresh on heartbeat failure for DN→SCM** — 
`EndpointStateMachine.resolveLatestAddress`, 
`SCMConnectionManager.refreshSCMServer` (4-phase atomic-replace), 
`StateContext.migrateEndpoint` queue migration, the heartbeat-task trigger, and 
the `ozone.datanode.scm.heartbeat.address.refresh.threshold` knob. Largest, 
lands last.
   
   There is no separate "OM↔OM Hadoop RPC" PR because `OMInterServiceProtocol` 
rides on the same `OMFailoverProxyProvider` machinery as Client→OM, so OM↔OM 
Hadoop RPC recovery is a free function of PR #2 above. SCM↔SCM Ratis is a 
comment-only cleanup that rides with PR #1.
   
   The branch on this PR will stay around as a reference. I'll link the four 
new PRs back here as I open them.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to