SEZ9 commented on PR #11077: URL: https://github.com/apache/seatunnel/pull/11077#issuecomment-5707342624
@hesam-oxe thanks for the detailed walkthrough against `ef2bb095`. **F1 (destination-key collisions):** The described approach sounds right — folding `sink.getClass()` into `DestinationKey.equals()/hashCode()` alongside the physical identifier, with a fallback to object identity when either side is missing, closes the cross-connector collision path. `testSamePhysicalIdentifierDoesNotShareAcrossConnectorClasses` is the right pin for that. One follow-up: could you confirm how two *instances of the same connector class* with different configs (e.g. different credentials/endpoints) but the same identifier string are handled? If the identifier alone decides sharing within a class, that is the remaining scenario I'd want covered or explicitly documented as the connector's responsibility when implementing the identifier. **F2 (snapshot fan-out / restore-time union):** Persisting under one canonical identifier and merging legacy per-alias checkpoints by content in `getRestoredState()` addresses the N-times duplication concern. Your comment appears to have been cut off right at "Pinned by `" — could you post the test name for the F2 case? I'd like to see that it covers the mixed case too: a checkpoint where some aliases carry identical legacy copies and others carry genuinely distinct state, so content-based dedup doesn't collapse state that should remain separate. **F3–F8:** You mention these were re-verified against this head, but the comment only details F1 and F2. Could you add a short per-item note (what changed, or why no change was needed) for F3 (schema/config divergence across shared aliases), F4 and F6 (docs for `getPhysicalDestinationIdentifier()` and the changed `restoreWriter` contract), F5 (`proxyContexts` alias registration / `containsValue` cost), F7 (IOException wrapping in `computeIfAbsent`) and F8 (`getDestinationKey` Javadoc tags)? Once I have that plus the truncated F2 test reference, I can do the final pass on this head. <!-- streview-comment:1098 --> -- 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]
