CloverDew commented on issue #9980: URL: https://github.com/apache/seatunnel/issues/9980#issuecomment-3541691462
I'm planning to refactor the architecture. The previous implementation of SchemaCoordinator was a static singleton, with state stored in the TM heap memory. Restarting caused the coordination state to be lost. Therefore, I want to modify the architecture by removing FlushEvent and SchemaCoordinator, and also removing the Flink-specific implementation in the SupportSchemaEvolutionSinkWriter interface. Instead, I'll insert BroadcastSchemaSinkOperator before the Sink, relying on ck to ensure flushing and data consistency. This way, pending schema changes can also be persisted using Operator State, ensuring fault tolerance. Even in high-parallelism scenarios, coordination can be achieved using ck. I'm currently testing this. The plan is as follows: https://ycn2sw1zdz0c.feishu.cn/wiki/M3MCwzIksiSILoknPAqcINqOnwc -- 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]
