SEZ9 commented on PR #12608: URL: https://github.com/apache/seatunnel/pull/12608#issuecomment-6244588562
Thanks @CodeWithPravinMaske for the detailed pointers on **F1/F2** — that explanation makes sense. Moving the fix into `MySqlAntlrDdlParser#parsePrimaryIndexColumnNames` so that only a real `PRIMARY KEY` forces NOT NULL, with snapshot DDL, binlog DDL via `parseStreamingDdl`, and the checkpointed table history all going through the same parser, is the right shape for this. I'll re-check the changed files at `1d629b844` (the parser change, the streaming path, and `testNullableUniqueKeyColumnStaysOptionalInStreamingDdl`) and update F1/F2 once I've confirmed it in the diff. If there is also a test that rebuilds a table from the stored history and asserts the unique-key column stays optional, a pointer to it would be helpful. Since you mention there is no separate restore step any more, I'll also re-check whether `restoreNullableColumns` in `MySqlSchema` is still present; if it's gone, F5, F7 and F8 fall away with it. For **F6**, thanks for the `incompatible-changes.md` entry — I'll read the moved entry and close that out if it covers the NULL-instead-of-0 behaviour change. For **F3/F4**, could you confirm whether the MySQL-CDC docs now state that a nullable column listed in `table-names-config.primaryKeys` is still treated as NOT NULL (NULL coerced to the type default), or whether you'd prefer to leave that for a follow-up? Either is fine, I'd just like it decided explicitly. <!-- streview-comment:1829 --> -- 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]
