DanielLeens commented on PR #11103: URL: https://github.com/apache/seatunnel/pull/11103#issuecomment-4899174870
Thanks for raising that checkpoint-boundary question. I rechecked the actual Zeta sink path before replying here. On the current runtime path, `SinkFlowLifeCycle.received(...)` handles the barrier on the same task thread and calls `writer.prepareCommit(barrierId)` first, then `writer.snapshotState(barrierId)` immediately afterwards before the next record is processed. So on this concrete file-sink path there is not an extra interleaving write window inserted between those two calls by the engine itself. That is why I still read this PR as a valid targeted fix for the concrete race it is addressing today: the file write path, `finishAndCloseFile()`, `prepareCommit()`, `snapshotState()`, and schema-change close path all touch the same writer-owned stream state, and the new synchronization closes that shared-state write/close race on the current connector path. I still agree that a broader framework-level checkpoint/write coordination contract could be worth a separate STIP, but I would keep that as follow-up design work rather than reopening this unchanged PR head on that point alone. -- 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]
