davidzollo opened a new pull request, #12479: URL: https://github.com/apache/seatunnel/pull/12479
## What does this PR do? Fix the Flink source-coordinator serialization failure when the runtime Debezium `TableId` is not serializable. The CDC deserialization schema now writes table-history keys as stable identifiers during Java serialization and reconstructs `TableId` keys on read. Its public checkpoint-history contract and normal CDC record processing are unchanged. ## Root cause The table-history cache was a `HashMap<TableId, byte[]>`. The source tree contains a serializable `TableId` copy introduced by #10335, but the failing OceanBase Flink E2E loads Debezium 1.9 at runtime, whose `TableId` is not serializable. Flink therefore fails while serializing the source coordinator before the job starts. ## Test - Added a round-trip test that explicitly fails if any `TableId` reaches the Java serialization stream, while asserting restored history remains accessible by the original table key. - Ran `./mvnw spotless:apply` and `./mvnw spotless:check` for `connector-cdc-base` with `-nsu -Dmaven.gitcommitid.skip=true`. - Unit and integration tests were not run locally under the SeaTunnel verification policy; GitHub CI is the runtime validation source. -- 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]
