linguoxuan opened a new pull request, #4221: URL: https://github.com/apache/flink-cdc/pull/4221
### Purpose This PR fixes the issue where YAML Kafka sink connector does not support serializing complex types (MAP, ARRAY, ROW) to JSON format (Debezium / Canal), while Kafka SQL connector handles them without problem. ### Root Cause The issue was in the TableSchemaInfo class, which is responsible for converting CDC's RecordData format to Flink's RowData format before JSON serialization. The createFieldGetter() method lacked the necessary conversion logic for complex types. ### Changes 1. Added complex type conversion methods in TableSchemaInfo.java: support for ARRAY, MAP, and ROW types ### Testing 1. TableSchemaInfoTest.java: 2. DebeziumJsonSerializationSchemaTest.java: 3. CanalJsonSerializationSchemaTest.java: 4. KafkaDataSinkITCase.java 5. ComplexTypesEdgeCasesTest -- 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]
