From b3f3e7caad055838844c77754905ba492655ff1a Mon Sep 17 00:00:00 2001 From: harveyyue Date: Mon, 29 Jan 2024 17:47:42 +0800 Subject: [PATCH] [cdc] Align some types of debezium json format data with mysql/postgres cdc --- .../format/debezium/DebeziumRecordParser.java | 7 ++++++- .../format/debezium/DebeziumSchemaUtils.java | 20 +++++++++++++++---- .../cdc/kafka/KafkaSyncTableActionITCase.java | 10 +++------- .../table/schema/alltype/debezium-data-1.txt | 2 +- 4 files changed, 26 insertions(+), 13 deletions(-) diff --git a/paimon-flink/paimon-flink-cdc/src/main/java/org/apache/paimon/flink/action/cdc/format/debezium/DebeziumRecordParser.java b/paimon-flink/paimon-flink-cdc/src/main/java/org/apache/paimon/flink/action/cdc/format/debezium/DebeziumRecordParser.java index d4d5b47a25d6..9ae41d5dfc44 100644 --- a/paimon-flink/paimon-flink-cdc/src/main/java/org/apache/paimon/flink/action/cdc/format/debezium/DebeziumRecordParser.java +++ b/paimon-flink/paimon-flink-cdc/src/main/java/org/apache/paimon/flink/action/cdc/format/debezium/DebeziumRecordParser.java @@ -198,7 +198,12 @@ protected Map extractRowData( String transformed = DebeziumSchemaUtils.transformRawValue( - rawValue, debeziumType, className, typeMapping, record.get(fieldName)); + rawValue, + debeziumType, + className, + typeMapping, + record.get(fieldName), + parameters.get(fieldName)); resultMap.put(fieldName, transformed); paimonFieldTypes.put( diff --git a/paimon-flink/paimon-flink-cdc/src/main/java/org/apache/paimon/flink/action/cdc/format/debezium/DebeziumSchemaUtils.java b/paimon-flink/paimon-flink-cdc/src/main/java/org/apache/paimon/flink/action/cdc/format/debezium/DebeziumSchemaUtils.java index d3f1b1196632..946ef56b5923 100644 --- a/paimon-flink/paimon-flink-cdc/src/main/java/org/apache/paimon/flink/action/cdc/format/debezium/DebeziumSchemaUtils.java +++ b/paimon-flink/paimon-flink-cdc/src/main/java/org/apache/paimon/flink/action/cdc/format/debezium/DebeziumSchemaUtils.java @@ -29,6 +29,7 @@ import org.apache.paimon.shade.jackson2.com.fasterxml.jackson.databind.JsonNode; import io.debezium.data.Bits; +import io.debezium.data.EnumSet; import io.debezium.data.geometry.Geometry; import io.debezium.data.geometry.Point; import io.debezium.time.Date; @@ -41,6 +42,7 @@ import javax.annotation.Nullable; import java.math.BigDecimal; +import java.math.BigInteger; import java.time.Instant; import java.time.LocalDateTime; import java.time.ZoneOffset; @@ -61,7 +63,8 @@ public static String transformRawValue( String debeziumType, @Nullable String className, TypeMapping typeMapping, - JsonNode origin) { + JsonNode origin, + Map parameters) { if (rawValue == null) { return null; } @@ -87,9 +90,14 @@ public static String transformRawValue( } else if ("bytes".equals(debeziumType) && decimalLogicalName().equals(className)) { // MySQL numeric, fixed, decimal try { - new BigDecimal(rawValue); - } catch (NumberFormatException e) { - throw new IllegalArgumentException( + byte[] bytes = Base64.getDecoder().decode(rawValue); + transformed = + new BigDecimal( + new BigInteger(bytes), + Integer.parseInt(parameters.get("scale"))) + .toPlainString(); + } catch (Exception e) { + throw new RuntimeException( "Invalid big decimal value " + rawValue + ". Make sure that in the `customConverterConfigs` " @@ -211,6 +219,10 @@ public static DataType toDataType( return DataTypes.TIME(); } + if (EnumSet.LOGICAL_NAME.equals(className)) { + return DataTypes.ARRAY(DataTypes.STRING()); + } + return fromDebeziumType(debeziumType); } diff --git a/paimon-flink/paimon-flink-cdc/src/test/java/org/apache/paimon/flink/action/cdc/kafka/KafkaSyncTableActionITCase.java b/paimon-flink/paimon-flink-cdc/src/test/java/org/apache/paimon/flink/action/cdc/kafka/KafkaSyncTableActionITCase.java index 47ab426c2700..6216a88df232 100644 --- a/paimon-flink/paimon-flink-cdc/src/test/java/org/apache/paimon/flink/action/cdc/kafka/KafkaSyncTableActionITCase.java +++ b/paimon-flink/paimon-flink-cdc/src/test/java/org/apache/paimon/flink/action/cdc/kafka/KafkaSyncTableActionITCase.java @@ -702,7 +702,6 @@ public void testSchemaIncludeRecord(String format) throws Exception { waitForResult(expected, table, rowType, primaryKeys); } - // TODO some types are different from mysql cdc; maybe need to fix public void testAllTypesWithSchemaImpl(String format) throws Exception { String topic = "schema_include_all_type"; createTestTopic(topic, 1, 1); @@ -805,7 +804,7 @@ public void testAllTypesWithSchemaImpl(String format) throws Exception { DataTypes.STRING(), // _multiline DataTypes.STRING(), // _multipolygon DataTypes.STRING(), // _geometrycollection - DataTypes.STRING() // _set different from mysql cdc + DataTypes.ARRAY(DataTypes.STRING()) // _set different from mysql cdc }, new String[] { "_id", @@ -907,9 +906,7 @@ public void testAllTypesWithSchemaImpl(String format) throws Exception { + "1.000011, 2.000022, 3.000033, " + "1.000111, 2.000222, 3.000333, " + "12345.110, 12345.220, 12345.330, " - // TODO fix FIXED - + "1.2345678987654322E32, 1.2345678987654322E32, 1.2345678987654322E32, " - // TODO fix BIG DECIMAL + + "123456789876543212345678987654321.110, 123456789876543212345678987654321.220, 123456789876543212345678987654321.330, " + "11111, 22222, 33333, 2222222222222222400000000000.0000000000, " + "19439, " // display value of datetime is not affected by timezone @@ -940,8 +937,7 @@ public void testAllTypesWithSchemaImpl(String format) throws Exception { + "{\"coordinates\":[[[1,1],[2,2],[3,3]],[[4,4],[5,5]]],\"type\":\"MultiLineString\",\"srid\":0}, " + "{\"coordinates\":[[[[0,0],[10,0],[10,10],[0,10],[0,0]]],[[[5,5],[7,5],[7,7],[5,7],[5,5]]]],\"type\":\"MultiPolygon\",\"srid\":0}, " + "{\"geometries\":[{\"type\":\"Point\",\"coordinates\":[10,10]},{\"type\":\"Point\",\"coordinates\":[30,30]},{\"type\":\"LineString\",\"coordinates\":[[15,15],[20,20]]}],\"type\":\"GeometryCollection\",\"srid\":0}, " - // TODO fix set - + "a,b" + + "[a, b]" + "]"); List primaryKeys = Arrays.asList("pt", "_id"); diff --git a/paimon-flink/paimon-flink-cdc/src/test/resources/kafka/debezium/table/schema/alltype/debezium-data-1.txt b/paimon-flink/paimon-flink-cdc/src/test/resources/kafka/debezium/table/schema/alltype/debezium-data-1.txt index b398425cebcc..80a7d21249a9 100644 --- a/paimon-flink/paimon-flink-cdc/src/test/resources/kafka/debezium/table/schema/alltype/debezium-data-1.txt +++ b/paimon-flink/paimon-flink-cdc/src/test/resources/kafka/debezium/table/schema/alltype/debezium-data-1.txt @@ -16,4 +16,4 @@ * limitations under the License. */ -{"schema":{"type":"struct","fields":[{"type":"struct","fields":[{"type":"int32","optional":false,"field":"_id"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"1","connect.decimal.precision":"2"},"field":"pt"},{"type":"boolean","optional":true,"field":"_bit1"},{"type":"bytes","optional":true,"name":"io.debezium.data.Bits","version":1,"parameters":{"length":"64"},"field":"_bit"},{"type":"int16","optional":true,"field":"_tinyint1"},{"type":"int16","optional":true,"field":"_boolean"},{"type":"int16","optional":true,"field":"_bool"},{"type":"int16","optional":true,"field":"_tinyint"},{"type":"int16","optional":true,"field":"_tinyint_unsigned"},{"type":"int16","optional":true,"field":"_tinyint_unsigned_zerofill"},{"type":"int16","optional":true,"field":"_smallint"},{"type":"int32","optional":true,"field":"_smallint_unsigned"},{"type":"int32","optional":true,"field":"_smallint_unsigned_zerofill"},{"type":"int32","optional":true,"field":"_mediumint"},{"type":"int32","optional":true,"field":"_mediumint_unsigned"},{"type":"int32","optional":true,"field":"_mediumint_unsigned_zerofill"},{"type":"int32","optional":true,"field":"_int"},{"type":"int64","optional":true,"field":"_int_unsigned"},{"type":"int64","optional":true,"field":"_int_unsigned_zerofill"},{"type":"int64","optional":true,"field":"_bigint"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"0"},"field":"_bigint_unsigned"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"0"},"field":"_bigint_unsigned_zerofill"},{"type":"bytes","optional":false,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"0"},"field":"_serial"},{"type":"double","optional":true,"field":"_float"},{"type":"double","optional":true,"field":"_float_unsigned"},{"type":"double","optional":true,"field":"_float_unsigned_zerofill"},{"type":"double","optional":true,"field":"_real"},{"type":"double","optional":true,"field":"_real_unsigned"},{"type":"double","optional":true,"field":"_real_unsigned_zerofill"},{"type":"double","optional":true,"field":"_double"},{"type":"double","optional":true,"field":"_double_unsigned"},{"type":"double","optional":true,"field":"_double_unsigned_zerofill"},{"type":"double","optional":true,"field":"_double_precision"},{"type":"double","optional":true,"field":"_double_precision_unsigned"},{"type":"double","optional":true,"field":"_double_precision_unsigned_zerofill"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"3","connect.decimal.precision":"8"},"field":"_numeric"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"3","connect.decimal.precision":"8"},"field":"_numeric_unsigned"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"3","connect.decimal.precision":"8"},"field":"_numeric_unsigned_zerofill"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"3","connect.decimal.precision":"40"},"field":"_fixed"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"3","connect.decimal.precision":"40"},"field":"_fixed_unsigned"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"3","connect.decimal.precision":"40"},"field":"_fixed_unsigned_zerofill"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"0","connect.decimal.precision":"8"},"field":"_decimal"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"0","connect.decimal.precision":"8"},"field":"_decimal_unsigned"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"0","connect.decimal.precision":"8"},"field":"_decimal_unsigned_zerofill"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"10","connect.decimal.precision":"38"},"field":"_big_decimal"},{"type":"int32","optional":true,"name":"io.debezium.time.Date","version":1,"field":"_date"},{"type":"int64","optional":true,"name":"io.debezium.time.Timestamp","version":1,"field":"_datetime"},{"type":"int64","optional":true,"name":"io.debezium.time.Timestamp","version":1,"field":"_datetime3"},{"type":"int64","optional":true,"name":"io.debezium.time.MicroTimestamp","version":1,"field":"_datetime6"},{"type":"int64","optional":true,"name":"io.debezium.time.Timestamp","version":1,"field":"_datetime_p"},{"type":"int64","optional":true,"name":"io.debezium.time.Timestamp","version":1,"field":"_datetime_p2"},{"type":"string","optional":true,"name":"io.debezium.time.ZonedTimestamp","version":1,"field":"_timestamp"},{"type":"string","optional":true,"name":"io.debezium.time.ZonedTimestamp","version":1,"field":"_timestamp0"},{"type":"string","optional":true,"field":"_char"},{"type":"string","optional":true,"field":"_varchar"},{"type":"string","optional":true,"field":"_tinytext"},{"type":"string","optional":true,"field":"_text"},{"type":"string","optional":true,"field":"_mediumtext"},{"type":"string","optional":true,"field":"_longtext"},{"type":"bytes","optional":true,"field":"_bin"},{"type":"bytes","optional":true,"field":"_varbin"},{"type":"bytes","optional":true,"field":"_tinyblob"},{"type":"bytes","optional":true,"field":"_blob"},{"type":"bytes","optional":true,"field":"_mediumblob"},{"type":"bytes","optional":true,"field":"_longblob"},{"type":"string","optional":true,"name":"io.debezium.data.Json","version":1,"field":"_json"},{"type":"string","optional":true,"name":"io.debezium.data.Enum","version":1,"parameters":{"allowed":"value1,value2,value3"},"field":"_enum"},{"type":"int32","optional":true,"name":"io.debezium.time.Year","version":1,"field":"_year"},{"type":"int64","optional":true,"name":"io.debezium.time.MicroTime","version":1,"field":"_time"},{"type":"struct","fields":[{"type":"double","optional":false,"field":"x"},{"type":"double","optional":false,"field":"y"},{"type":"bytes","optional":true,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Point","version":1,"doc":"Geometry (POINT)","field":"_point"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_geometry"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_linestring"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_polygon"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_multipoint"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_multiline"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_multipolygon"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_geometrycollection"},{"type":"string","optional":true,"name":"io.debezium.data.EnumSet","version":1,"parameters":{"allowed":"a,b,c,d"},"field":"_set"}],"optional":true,"name":"mysql_binlog_source.paimon_sync_table.all_types_table.Value","field":"before"},{"type":"struct","fields":[{"type":"int32","optional":false,"field":"_id"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"1","connect.decimal.precision":"2"},"field":"pt"},{"type":"boolean","optional":true,"field":"_bit1"},{"type":"bytes","optional":true,"name":"io.debezium.data.Bits","version":1,"parameters":{"length":"64"},"field":"_bit"},{"type":"int16","optional":true,"field":"_tinyint1"},{"type":"int16","optional":true,"field":"_boolean"},{"type":"int16","optional":true,"field":"_bool"},{"type":"int16","optional":true,"field":"_tinyint"},{"type":"int16","optional":true,"field":"_tinyint_unsigned"},{"type":"int16","optional":true,"field":"_tinyint_unsigned_zerofill"},{"type":"int16","optional":true,"field":"_smallint"},{"type":"int32","optional":true,"field":"_smallint_unsigned"},{"type":"int32","optional":true,"field":"_smallint_unsigned_zerofill"},{"type":"int32","optional":true,"field":"_mediumint"},{"type":"int32","optional":true,"field":"_mediumint_unsigned"},{"type":"int32","optional":true,"field":"_mediumint_unsigned_zerofill"},{"type":"int32","optional":true,"field":"_int"},{"type":"int64","optional":true,"field":"_int_unsigned"},{"type":"int64","optional":true,"field":"_int_unsigned_zerofill"},{"type":"int64","optional":true,"field":"_bigint"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"0"},"field":"_bigint_unsigned"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"0"},"field":"_bigint_unsigned_zerofill"},{"type":"bytes","optional":false,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"0"},"field":"_serial"},{"type":"double","optional":true,"field":"_float"},{"type":"double","optional":true,"field":"_float_unsigned"},{"type":"double","optional":true,"field":"_float_unsigned_zerofill"},{"type":"double","optional":true,"field":"_real"},{"type":"double","optional":true,"field":"_real_unsigned"},{"type":"double","optional":true,"field":"_real_unsigned_zerofill"},{"type":"double","optional":true,"field":"_double"},{"type":"double","optional":true,"field":"_double_unsigned"},{"type":"double","optional":true,"field":"_double_unsigned_zerofill"},{"type":"double","optional":true,"field":"_double_precision"},{"type":"double","optional":true,"field":"_double_precision_unsigned"},{"type":"double","optional":true,"field":"_double_precision_unsigned_zerofill"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"3","connect.decimal.precision":"8"},"field":"_numeric"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"3","connect.decimal.precision":"8"},"field":"_numeric_unsigned"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"3","connect.decimal.precision":"8"},"field":"_numeric_unsigned_zerofill"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"3","connect.decimal.precision":"40"},"field":"_fixed"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"3","connect.decimal.precision":"40"},"field":"_fixed_unsigned"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"3","connect.decimal.precision":"40"},"field":"_fixed_unsigned_zerofill"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"0","connect.decimal.precision":"8"},"field":"_decimal"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"0","connect.decimal.precision":"8"},"field":"_decimal_unsigned"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"0","connect.decimal.precision":"8"},"field":"_decimal_unsigned_zerofill"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"10","connect.decimal.precision":"38"},"field":"_big_decimal"},{"type":"int32","optional":true,"name":"io.debezium.time.Date","version":1,"field":"_date"},{"type":"int64","optional":true,"name":"io.debezium.time.Timestamp","version":1,"field":"_datetime"},{"type":"int64","optional":true,"name":"io.debezium.time.Timestamp","version":1,"field":"_datetime3"},{"type":"int64","optional":true,"name":"io.debezium.time.MicroTimestamp","version":1,"field":"_datetime6"},{"type":"int64","optional":true,"name":"io.debezium.time.Timestamp","version":1,"field":"_datetime_p"},{"type":"int64","optional":true,"name":"io.debezium.time.Timestamp","version":1,"field":"_datetime_p2"},{"type":"string","optional":true,"name":"io.debezium.time.ZonedTimestamp","version":1,"field":"_timestamp"},{"type":"string","optional":true,"name":"io.debezium.time.ZonedTimestamp","version":1,"field":"_timestamp0"},{"type":"string","optional":true,"field":"_char"},{"type":"string","optional":true,"field":"_varchar"},{"type":"string","optional":true,"field":"_tinytext"},{"type":"string","optional":true,"field":"_text"},{"type":"string","optional":true,"field":"_mediumtext"},{"type":"string","optional":true,"field":"_longtext"},{"type":"bytes","optional":true,"field":"_bin"},{"type":"bytes","optional":true,"field":"_varbin"},{"type":"bytes","optional":true,"field":"_tinyblob"},{"type":"bytes","optional":true,"field":"_blob"},{"type":"bytes","optional":true,"field":"_mediumblob"},{"type":"bytes","optional":true,"field":"_longblob"},{"type":"string","optional":true,"name":"io.debezium.data.Json","version":1,"field":"_json"},{"type":"string","optional":true,"name":"io.debezium.data.Enum","version":1,"parameters":{"allowed":"value1,value2,value3"},"field":"_enum"},{"type":"int32","optional":true,"name":"io.debezium.time.Year","version":1,"field":"_year"},{"type":"int64","optional":true,"name":"io.debezium.time.MicroTime","version":1,"field":"_time"},{"type":"struct","fields":[{"type":"double","optional":false,"field":"x"},{"type":"double","optional":false,"field":"y"},{"type":"bytes","optional":true,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Point","version":1,"doc":"Geometry (POINT)","field":"_point"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_geometry"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_linestring"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_polygon"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_multipoint"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_multiline"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_multipolygon"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_geometrycollection"},{"type":"string","optional":true,"name":"io.debezium.data.EnumSet","version":1,"parameters":{"allowed":"a,b,c,d"},"field":"_set"}],"optional":true,"name":"mysql_binlog_source.paimon_sync_table.all_types_table.Value","field":"after"},{"type":"struct","fields":[{"type":"string","optional":false,"field":"version"},{"type":"string","optional":false,"field":"connector"},{"type":"string","optional":false,"field":"name"},{"type":"int64","optional":false,"field":"ts_ms"},{"type":"string","optional":true,"name":"io.debezium.data.Enum","version":1,"parameters":{"allowed":"true,last,false,incremental"},"default":"false","field":"snapshot"},{"type":"string","optional":false,"field":"db"},{"type":"string","optional":true,"field":"sequence"},{"type":"string","optional":true,"field":"table"},{"type":"int64","optional":false,"field":"server_id"},{"type":"string","optional":true,"field":"gtid"},{"type":"string","optional":false,"field":"file"},{"type":"int64","optional":false,"field":"pos"},{"type":"int32","optional":false,"field":"row"},{"type":"int64","optional":true,"field":"thread"},{"type":"string","optional":true,"field":"query"}],"optional":false,"name":"io.debezium.connector.mysql.Source","field":"source"},{"type":"string","optional":false,"field":"op"},{"type":"int64","optional":true,"field":"ts_ms"},{"type":"struct","fields":[{"type":"string","optional":false,"field":"id"},{"type":"int64","optional":false,"field":"total_order"},{"type":"int64","optional":false,"field":"data_collection_order"}],"optional":true,"field":"transaction"}],"optional":false,"name":"mysql_binlog_source.paimon_sync_table.all_types_table.Envelope"},"payload":{"before":null,"after":{"_id":1,"pt":1.1,"_bit1":true,"_bit":"xwcAAAAAAAA=","_tinyint1":1,"_boolean":1,"_bool":0,"_tinyint":1,"_tinyint_unsigned":2,"_tinyint_unsigned_zerofill":3,"_smallint":1000,"_smallint_unsigned":2000,"_smallint_unsigned_zerofill":3000,"_mediumint":100000,"_mediumint_unsigned":200000,"_mediumint_unsigned_zerofill":300000,"_int":1000000,"_int_unsigned":2000000,"_int_unsigned_zerofill":3000000,"_bigint":10000000000,"_bigint_unsigned":20000000000,"_bigint_unsigned_zerofill":30000000000,"_serial":40000000000,"_float":1.5,"_float_unsigned":2.5,"_float_unsigned_zerofill":3.5,"_real":1.000001,"_real_unsigned":2.000002,"_real_unsigned_zerofill":3.000003,"_double":1.000011,"_double_unsigned":2.000022,"_double_unsigned_zerofill":3.000033,"_double_precision":1.000111,"_double_precision_unsigned":2.000222,"_double_precision_unsigned_zerofill":3.000333,"_numeric":12345.110,"_numeric_unsigned":12345.220,"_numeric_unsigned_zerofill":12345.330,"_fixed":123456789876543212345678987654321.110,"_fixed_unsigned":123456789876543212345678987654321.220,"_fixed_unsigned_zerofill":123456789876543212345678987654321.330,"_decimal":11111,"_decimal_unsigned":22222,"_decimal_unsigned_zerofill":33333,"_big_decimal":2222222222222222300000001111.1234567890,"_date":19439,"_datetime":1679581805000,"_datetime3":1679581805123,"_datetime6":1679581805123456,"_datetime_p":1679668200000,"_datetime_p2":1679668205120,"_timestamp":"2023-03-23T22:00:10.123456Z","_timestamp0":"2023-03-23T07:10:00Z","_char":"Paimon","_varchar":"Apache Paimon","_tinytext":"Apache Paimon MySQL TINYTEXT Test Data","_text":"Apache Paimon MySQL Test Data","_mediumtext":"Apache Paimon MySQL MEDIUMTEXT Test Data","_longtext":"Apache Paimon MySQL Long Test Data","_bin":"Ynl0ZXMAAAAAAA==","_varbin":"bW9yZSBieXRlcw==","_tinyblob":"VElOWUJMT0IgdHlwZSB0ZXN0IGRhdGE=","_blob":"QkxPQiB0eXBlIHRlc3QgZGF0YQ==","_mediumblob":"TUVESVVNQkxPQiB0eXBlIHRlc3QgZGF0YQ==","_longblob":"TE9OR0JMT0IgIGJ5dGVzIHRlc3QgZGF0YQ==","_json":"{\"a\": \"b\"}","_enum":"value1","_year":2023,"_time":36803000000,"_point":{"x":1.0,"y":1.0,"wkb":"AQEAAAAAAAAAAADwPwAAAAAAAPA/","srid":null},"_geometry":{"wkb":"AQMAAAABAAAABQAAAAAAAAAAAPA/AAAAAAAA8D8AAAAAAAAAQAAAAAAAAPA/AAAAAAAAAEAAAAAAAAAAQAAAAAAAAPA/AAAAAAAAAEAAAAAAAADwPwAAAAAAAPA/","srid":null},"_linestring":{"wkb":"AQIAAAADAAAAAAAAAAAACEAAAAAAAAAAAAAAAAAAAAhAAAAAAAAACEAAAAAAAAAIQAAAAAAAABRA","srid":null},"_polygon":{"wkb":"AQMAAAABAAAABQAAAAAAAAAAAPA/AAAAAAAA8D8AAAAAAAAAQAAAAAAAAPA/AAAAAAAAAEAAAAAAAAAAQAAAAAAAAPA/AAAAAAAAAEAAAAAAAADwPwAAAAAAAPA/","srid":null},"_multipoint":{"wkb":"AQQAAAACAAAAAQEAAAAAAAAAAADwPwAAAAAAAPA/AQEAAAAAAAAAAAAAQAAAAAAAAABA","srid":null},"_multiline":{"wkb":"AQUAAAACAAAAAQIAAAADAAAAAAAAAAAA8D8AAAAAAADwPwAAAAAAAABAAAAAAAAAAEAAAAAAAAAIQAAAAAAAAAhAAQIAAAACAAAAAAAAAAAAEEAAAAAAAAAQQAAAAAAAABRAAAAAAAAAFEA=","srid":null},"_multipolygon":{"wkb":"AQYAAAACAAAAAQMAAAABAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkQAAAAAAAAAAAAAAAAAAAJEAAAAAAAAAkQAAAAAAAAAAAAAAAAAAAJEAAAAAAAAAAAAAAAAAAAAAAAQMAAAABAAAABQAAAAAAAAAAABRAAAAAAAAAFEAAAAAAAAAcQAAAAAAAABRAAAAAAAAAHEAAAAAAAAAcQAAAAAAAABRAAAAAAAAAHEAAAAAAAAAUQAAAAAAAABRA","srid":null},"_geometrycollection":{"wkb":"AQcAAAADAAAAAQEAAAAAAAAAAAAkQAAAAAAAACRAAQEAAAAAAAAAAAA+QAAAAAAAAD5AAQIAAAACAAAAAAAAAAAALkAAAAAAAAAuQAAAAAAAADRAAAAAAAAANEA=","srid":null},"_set":"a,b"},"source":{"version":"1.9.7.Final","connector":"mysql","name":"mysql_binlog_source","ts_ms":0,"snapshot":"false","db":"paimon_sync_table","sequence":null,"table":"all_types_table","server_id":0,"gtid":null,"file":"","pos":0,"row":0,"thread":null,"query":null},"op":"r","ts_ms":1706167086275,"transaction":null}} +{"schema":{"type":"struct","fields":[{"type":"struct","fields":[{"type":"int32","optional":false,"field":"_id"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"1","connect.decimal.precision":"2"},"field":"pt"},{"type":"boolean","optional":true,"field":"_bit1"},{"type":"bytes","optional":true,"name":"io.debezium.data.Bits","version":1,"parameters":{"length":"64"},"field":"_bit"},{"type":"int16","optional":true,"field":"_tinyint1"},{"type":"int16","optional":true,"field":"_boolean"},{"type":"int16","optional":true,"field":"_bool"},{"type":"int16","optional":true,"field":"_tinyint"},{"type":"int16","optional":true,"field":"_tinyint_unsigned"},{"type":"int16","optional":true,"field":"_tinyint_unsigned_zerofill"},{"type":"int16","optional":true,"field":"_smallint"},{"type":"int32","optional":true,"field":"_smallint_unsigned"},{"type":"int32","optional":true,"field":"_smallint_unsigned_zerofill"},{"type":"int32","optional":true,"field":"_mediumint"},{"type":"int32","optional":true,"field":"_mediumint_unsigned"},{"type":"int32","optional":true,"field":"_mediumint_unsigned_zerofill"},{"type":"int32","optional":true,"field":"_int"},{"type":"int64","optional":true,"field":"_int_unsigned"},{"type":"int64","optional":true,"field":"_int_unsigned_zerofill"},{"type":"int64","optional":true,"field":"_bigint"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"0"},"field":"_bigint_unsigned"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"0"},"field":"_bigint_unsigned_zerofill"},{"type":"bytes","optional":false,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"0"},"field":"_serial"},{"type":"double","optional":true,"field":"_float"},{"type":"double","optional":true,"field":"_float_unsigned"},{"type":"double","optional":true,"field":"_float_unsigned_zerofill"},{"type":"double","optional":true,"field":"_real"},{"type":"double","optional":true,"field":"_real_unsigned"},{"type":"double","optional":true,"field":"_real_unsigned_zerofill"},{"type":"double","optional":true,"field":"_double"},{"type":"double","optional":true,"field":"_double_unsigned"},{"type":"double","optional":true,"field":"_double_unsigned_zerofill"},{"type":"double","optional":true,"field":"_double_precision"},{"type":"double","optional":true,"field":"_double_precision_unsigned"},{"type":"double","optional":true,"field":"_double_precision_unsigned_zerofill"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"3","connect.decimal.precision":"8"},"field":"_numeric"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"3","connect.decimal.precision":"8"},"field":"_numeric_unsigned"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"3","connect.decimal.precision":"8"},"field":"_numeric_unsigned_zerofill"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"3","connect.decimal.precision":"40"},"field":"_fixed"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"3","connect.decimal.precision":"40"},"field":"_fixed_unsigned"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"3","connect.decimal.precision":"40"},"field":"_fixed_unsigned_zerofill"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"0","connect.decimal.precision":"8"},"field":"_decimal"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"0","connect.decimal.precision":"8"},"field":"_decimal_unsigned"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"0","connect.decimal.precision":"8"},"field":"_decimal_unsigned_zerofill"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"10","connect.decimal.precision":"38"},"field":"_big_decimal"},{"type":"int32","optional":true,"name":"io.debezium.time.Date","version":1,"field":"_date"},{"type":"int64","optional":true,"name":"io.debezium.time.Timestamp","version":1,"field":"_datetime"},{"type":"int64","optional":true,"name":"io.debezium.time.Timestamp","version":1,"field":"_datetime3"},{"type":"int64","optional":true,"name":"io.debezium.time.MicroTimestamp","version":1,"field":"_datetime6"},{"type":"int64","optional":true,"name":"io.debezium.time.Timestamp","version":1,"field":"_datetime_p"},{"type":"int64","optional":true,"name":"io.debezium.time.Timestamp","version":1,"field":"_datetime_p2"},{"type":"string","optional":true,"name":"io.debezium.time.ZonedTimestamp","version":1,"field":"_timestamp"},{"type":"string","optional":true,"name":"io.debezium.time.ZonedTimestamp","version":1,"field":"_timestamp0"},{"type":"string","optional":true,"field":"_char"},{"type":"string","optional":true,"field":"_varchar"},{"type":"string","optional":true,"field":"_tinytext"},{"type":"string","optional":true,"field":"_text"},{"type":"string","optional":true,"field":"_mediumtext"},{"type":"string","optional":true,"field":"_longtext"},{"type":"bytes","optional":true,"field":"_bin"},{"type":"bytes","optional":true,"field":"_varbin"},{"type":"bytes","optional":true,"field":"_tinyblob"},{"type":"bytes","optional":true,"field":"_blob"},{"type":"bytes","optional":true,"field":"_mediumblob"},{"type":"bytes","optional":true,"field":"_longblob"},{"type":"string","optional":true,"name":"io.debezium.data.Json","version":1,"field":"_json"},{"type":"string","optional":true,"name":"io.debezium.data.Enum","version":1,"parameters":{"allowed":"value1,value2,value3"},"field":"_enum"},{"type":"int32","optional":true,"name":"io.debezium.time.Year","version":1,"field":"_year"},{"type":"int64","optional":true,"name":"io.debezium.time.MicroTime","version":1,"field":"_time"},{"type":"struct","fields":[{"type":"double","optional":false,"field":"x"},{"type":"double","optional":false,"field":"y"},{"type":"bytes","optional":true,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Point","version":1,"doc":"Geometry (POINT)","field":"_point"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_geometry"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_linestring"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_polygon"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_multipoint"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_multiline"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_multipolygon"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_geometrycollection"},{"type":"string","optional":true,"name":"io.debezium.data.EnumSet","version":1,"parameters":{"allowed":"a,b,c,d"},"field":"_set"}],"optional":true,"name":"mysql_binlog_source.paimon_sync_table.all_types_table.Value","field":"before"},{"type":"struct","fields":[{"type":"int32","optional":false,"field":"_id"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"1","connect.decimal.precision":"2"},"field":"pt"},{"type":"boolean","optional":true,"field":"_bit1"},{"type":"bytes","optional":true,"name":"io.debezium.data.Bits","version":1,"parameters":{"length":"64"},"field":"_bit"},{"type":"int16","optional":true,"field":"_tinyint1"},{"type":"int16","optional":true,"field":"_boolean"},{"type":"int16","optional":true,"field":"_bool"},{"type":"int16","optional":true,"field":"_tinyint"},{"type":"int16","optional":true,"field":"_tinyint_unsigned"},{"type":"int16","optional":true,"field":"_tinyint_unsigned_zerofill"},{"type":"int16","optional":true,"field":"_smallint"},{"type":"int32","optional":true,"field":"_smallint_unsigned"},{"type":"int32","optional":true,"field":"_smallint_unsigned_zerofill"},{"type":"int32","optional":true,"field":"_mediumint"},{"type":"int32","optional":true,"field":"_mediumint_unsigned"},{"type":"int32","optional":true,"field":"_mediumint_unsigned_zerofill"},{"type":"int32","optional":true,"field":"_int"},{"type":"int64","optional":true,"field":"_int_unsigned"},{"type":"int64","optional":true,"field":"_int_unsigned_zerofill"},{"type":"int64","optional":true,"field":"_bigint"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"0"},"field":"_bigint_unsigned"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"0"},"field":"_bigint_unsigned_zerofill"},{"type":"bytes","optional":false,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"0"},"field":"_serial"},{"type":"double","optional":true,"field":"_float"},{"type":"double","optional":true,"field":"_float_unsigned"},{"type":"double","optional":true,"field":"_float_unsigned_zerofill"},{"type":"double","optional":true,"field":"_real"},{"type":"double","optional":true,"field":"_real_unsigned"},{"type":"double","optional":true,"field":"_real_unsigned_zerofill"},{"type":"double","optional":true,"field":"_double"},{"type":"double","optional":true,"field":"_double_unsigned"},{"type":"double","optional":true,"field":"_double_unsigned_zerofill"},{"type":"double","optional":true,"field":"_double_precision"},{"type":"double","optional":true,"field":"_double_precision_unsigned"},{"type":"double","optional":true,"field":"_double_precision_unsigned_zerofill"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"3","connect.decimal.precision":"8"},"field":"_numeric"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"3","connect.decimal.precision":"8"},"field":"_numeric_unsigned"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"3","connect.decimal.precision":"8"},"field":"_numeric_unsigned_zerofill"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"3","connect.decimal.precision":"40"},"field":"_fixed"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"3","connect.decimal.precision":"40"},"field":"_fixed_unsigned"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"3","connect.decimal.precision":"40"},"field":"_fixed_unsigned_zerofill"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"0","connect.decimal.precision":"8"},"field":"_decimal"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"0","connect.decimal.precision":"8"},"field":"_decimal_unsigned"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"0","connect.decimal.precision":"8"},"field":"_decimal_unsigned_zerofill"},{"type":"bytes","optional":true,"name":"org.apache.kafka.connect.data.Decimal","version":1,"parameters":{"scale":"10","connect.decimal.precision":"38"},"field":"_big_decimal"},{"type":"int32","optional":true,"name":"io.debezium.time.Date","version":1,"field":"_date"},{"type":"int64","optional":true,"name":"io.debezium.time.Timestamp","version":1,"field":"_datetime"},{"type":"int64","optional":true,"name":"io.debezium.time.Timestamp","version":1,"field":"_datetime3"},{"type":"int64","optional":true,"name":"io.debezium.time.MicroTimestamp","version":1,"field":"_datetime6"},{"type":"int64","optional":true,"name":"io.debezium.time.Timestamp","version":1,"field":"_datetime_p"},{"type":"int64","optional":true,"name":"io.debezium.time.Timestamp","version":1,"field":"_datetime_p2"},{"type":"string","optional":true,"name":"io.debezium.time.ZonedTimestamp","version":1,"field":"_timestamp"},{"type":"string","optional":true,"name":"io.debezium.time.ZonedTimestamp","version":1,"field":"_timestamp0"},{"type":"string","optional":true,"field":"_char"},{"type":"string","optional":true,"field":"_varchar"},{"type":"string","optional":true,"field":"_tinytext"},{"type":"string","optional":true,"field":"_text"},{"type":"string","optional":true,"field":"_mediumtext"},{"type":"string","optional":true,"field":"_longtext"},{"type":"bytes","optional":true,"field":"_bin"},{"type":"bytes","optional":true,"field":"_varbin"},{"type":"bytes","optional":true,"field":"_tinyblob"},{"type":"bytes","optional":true,"field":"_blob"},{"type":"bytes","optional":true,"field":"_mediumblob"},{"type":"bytes","optional":true,"field":"_longblob"},{"type":"string","optional":true,"name":"io.debezium.data.Json","version":1,"field":"_json"},{"type":"string","optional":true,"name":"io.debezium.data.Enum","version":1,"parameters":{"allowed":"value1,value2,value3"},"field":"_enum"},{"type":"int32","optional":true,"name":"io.debezium.time.Year","version":1,"field":"_year"},{"type":"int64","optional":true,"name":"io.debezium.time.MicroTime","version":1,"field":"_time"},{"type":"struct","fields":[{"type":"double","optional":false,"field":"x"},{"type":"double","optional":false,"field":"y"},{"type":"bytes","optional":true,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Point","version":1,"doc":"Geometry (POINT)","field":"_point"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_geometry"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_linestring"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_polygon"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_multipoint"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_multiline"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_multipolygon"},{"type":"struct","fields":[{"type":"bytes","optional":false,"field":"wkb"},{"type":"int32","optional":true,"field":"srid"}],"optional":true,"name":"io.debezium.data.geometry.Geometry","version":1,"doc":"Geometry","field":"_geometrycollection"},{"type":"string","optional":true,"name":"io.debezium.data.EnumSet","version":1,"parameters":{"allowed":"a,b,c,d"},"field":"_set"}],"optional":true,"name":"mysql_binlog_source.paimon_sync_table.all_types_table.Value","field":"after"},{"type":"struct","fields":[{"type":"string","optional":false,"field":"version"},{"type":"string","optional":false,"field":"connector"},{"type":"string","optional":false,"field":"name"},{"type":"int64","optional":false,"field":"ts_ms"},{"type":"string","optional":true,"name":"io.debezium.data.Enum","version":1,"parameters":{"allowed":"true,last,false,incremental"},"default":"false","field":"snapshot"},{"type":"string","optional":false,"field":"db"},{"type":"string","optional":true,"field":"sequence"},{"type":"string","optional":true,"field":"table"},{"type":"int64","optional":false,"field":"server_id"},{"type":"string","optional":true,"field":"gtid"},{"type":"string","optional":false,"field":"file"},{"type":"int64","optional":false,"field":"pos"},{"type":"int32","optional":false,"field":"row"},{"type":"int64","optional":true,"field":"thread"},{"type":"string","optional":true,"field":"query"}],"optional":false,"name":"io.debezium.connector.mysql.Source","field":"source"},{"type":"string","optional":false,"field":"op"},{"type":"int64","optional":true,"field":"ts_ms"},{"type":"struct","fields":[{"type":"string","optional":false,"field":"id"},{"type":"int64","optional":false,"field":"total_order"},{"type":"int64","optional":false,"field":"data_collection_order"}],"optional":true,"field":"transaction"}],"optional":false,"name":"mysql_binlog_source.paimon_sync_table.all_types_table.Envelope"},"payload":{"before":null,"after":{"_id":1,"pt":"Cw==","_bit1":true,"_bit":"xwcAAAAAAAA=","_tinyint1":1,"_boolean":1,"_bool":0,"_tinyint":1,"_tinyint_unsigned":2,"_tinyint_unsigned_zerofill":3,"_smallint":1000,"_smallint_unsigned":2000,"_smallint_unsigned_zerofill":3000,"_mediumint":100000,"_mediumint_unsigned":200000,"_mediumint_unsigned_zerofill":300000,"_int":1000000,"_int_unsigned":2000000,"_int_unsigned_zerofill":3000000,"_bigint":10000000000,"_bigint_unsigned":"BKgXyAA=","_bigint_unsigned_zerofill":"BvwjrAA=","_serial":"CVAvkAA=","_float":1.5,"_float_unsigned":2.5,"_float_unsigned_zerofill":3.5,"_real":1.000001,"_real_unsigned":2.000002,"_real_unsigned_zerofill":3.000003,"_double":1.000011,"_double_unsigned":2.000022,"_double_unsigned_zerofill":3.000033,"_double_precision":1.000111,"_double_precision_unsigned":2.000222,"_double_precision_unsigned_zerofill":3.000333,"_numeric":"ALxfFg==","_numeric_unsigned":"ALxfhA==","_numeric_unsigned_zerofill":"ALxf8g==","_fixed":"F8bjwqHo0RQZ/Jj5o9PW","_fixed_unsigned":"F8bjwqHo0RQZ/Jj5o9RE","_fixed_unsigned_zerofill":"F8bjwqHo0RQZ/Jj5o9Sy","_decimal":"K2c=","_decimal_unsigned":"Vs4=","_decimal_unsigned_zerofill":"AII1","_big_decimal":"ELfYJWlzSHt+L+c1GgAAAA==","_date":19439,"_datetime":1679581805000,"_datetime3":1679581805123,"_datetime6":1679581805123456,"_datetime_p":1679668200000,"_datetime_p2":1679668205120,"_timestamp":"2023-03-23T22:00:10.123456Z","_timestamp0":"2023-03-23T07:10:00Z","_char":"Paimon","_varchar":"Apache Paimon","_tinytext":"Apache Paimon MySQL TINYTEXT Test Data","_text":"Apache Paimon MySQL Test Data","_mediumtext":"Apache Paimon MySQL MEDIUMTEXT Test Data","_longtext":"Apache Paimon MySQL Long Test Data","_bin":"Ynl0ZXMAAAAAAA==","_varbin":"bW9yZSBieXRlcw==","_tinyblob":"VElOWUJMT0IgdHlwZSB0ZXN0IGRhdGE=","_blob":"QkxPQiB0eXBlIHRlc3QgZGF0YQ==","_mediumblob":"TUVESVVNQkxPQiB0eXBlIHRlc3QgZGF0YQ==","_longblob":"TE9OR0JMT0IgIGJ5dGVzIHRlc3QgZGF0YQ==","_json":"{\"a\": \"b\"}","_enum":"value1","_year":2023,"_time":36803000000,"_point":{"x":1.0,"y":1.0,"wkb":"AQEAAAAAAAAAAADwPwAAAAAAAPA/","srid":null},"_geometry":{"wkb":"AQMAAAABAAAABQAAAAAAAAAAAPA/AAAAAAAA8D8AAAAAAAAAQAAAAAAAAPA/AAAAAAAAAEAAAAAAAAAAQAAAAAAAAPA/AAAAAAAAAEAAAAAAAADwPwAAAAAAAPA/","srid":null},"_linestring":{"wkb":"AQIAAAADAAAAAAAAAAAACEAAAAAAAAAAAAAAAAAAAAhAAAAAAAAACEAAAAAAAAAIQAAAAAAAABRA","srid":null},"_polygon":{"wkb":"AQMAAAABAAAABQAAAAAAAAAAAPA/AAAAAAAA8D8AAAAAAAAAQAAAAAAAAPA/AAAAAAAAAEAAAAAAAAAAQAAAAAAAAPA/AAAAAAAAAEAAAAAAAADwPwAAAAAAAPA/","srid":null},"_multipoint":{"wkb":"AQQAAAACAAAAAQEAAAAAAAAAAADwPwAAAAAAAPA/AQEAAAAAAAAAAAAAQAAAAAAAAABA","srid":null},"_multiline":{"wkb":"AQUAAAACAAAAAQIAAAADAAAAAAAAAAAA8D8AAAAAAADwPwAAAAAAAABAAAAAAAAAAEAAAAAAAAAIQAAAAAAAAAhAAQIAAAACAAAAAAAAAAAAEEAAAAAAAAAQQAAAAAAAABRAAAAAAAAAFEA=","srid":null},"_multipolygon":{"wkb":"AQYAAAACAAAAAQMAAAABAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkQAAAAAAAAAAAAAAAAAAAJEAAAAAAAAAkQAAAAAAAAAAAAAAAAAAAJEAAAAAAAAAAAAAAAAAAAAAAAQMAAAABAAAABQAAAAAAAAAAABRAAAAAAAAAFEAAAAAAAAAcQAAAAAAAABRAAAAAAAAAHEAAAAAAAAAcQAAAAAAAABRAAAAAAAAAHEAAAAAAAAAUQAAAAAAAABRA","srid":null},"_geometrycollection":{"wkb":"AQcAAAADAAAAAQEAAAAAAAAAAAAkQAAAAAAAACRAAQEAAAAAAAAAAAA+QAAAAAAAAD5AAQIAAAACAAAAAAAAAAAALkAAAAAAAAAuQAAAAAAAADRAAAAAAAAANEA=","srid":null},"_set":"a,b"},"source":{"version":"1.9.7.Final","connector":"mysql","name":"mysql_binlog_source","ts_ms":0,"snapshot":"false","db":"paimon_sync_table","sequence":null,"table":"all_types_table","server_id":0,"gtid":null,"file":"","pos":0,"row":0,"thread":null,"query":null},"op":"r","ts_ms":1706167086275,"transaction":null}}