ryannedolan commented on pull request #9589: URL: https://github.com/apache/kafka/pull/9589#issuecomment-735039590
What if we just run herders in both directions (A->B and B->A) whenever replication is enabled in one or both directions? That would require very minimal code changes, and only in the driver, while yielding the results you are expecting. Namely, we'd still see heartbeats on every _source_ cluster, and we'd still see heartbeats get replicated along each replication flow, but we would eliminate a ton of extraneous herders in the scenario you've illustrated. Specifically, if we see A->B.enabled, we run MirrorSourceConnector and MirrorCeckpointConnector in herder A->B, and we run MirrorHeartbeatConnector in herder B->A. But if neither A->B nor B->A is enabled, then we don't need to create either herder at all. This would change the behavior of the MM2 driver very slightly, since we'd no longer emit heartbeats to clusters that aren't part of any flow. But that doesn't really seem like a breaking change to me. "If a tree falls in the woods" and all that. What do you think @twobeeb ? ---------------------------------------------------------------- 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org