Cong Cheng created FLINK-39209:
----------------------------------

             Summary: Flink cdc doris connector throw exception when 
serializing temporal related type (time/date/timestamp etc.) columns
                 Key: FLINK-39209
                 URL: https://issues.apache.org/jira/browse/FLINK-39209
             Project: Flink
          Issue Type: Bug
          Components: Flink CDC
    Affects Versions: cdc-3.5.0, cdc-3.4.0, cdc-3.3.0
            Reporter: Cong Cheng


When sinking data to Doris using the Flink CDC Pipeline connector, the 
DorisEventSerializer converts Flink internal data types to Java 8 time types 
(such as java.time.ZonedDateTime , java.time.LocalTime , etc.).

However, in DorisEventSerializer , the ObjectMapper is initialized with default 
settings and lacks the JavaTimeModule . When 
objectMapper.writeValueAsString(valueMap) is called to serialize these time 
objects, it throws an exception.

The error log is something similar to:

{noformat}
Caused by: 
org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.exc.InvalidDefinitionException:
 Java 8 date/time type `java.time.LocalTime` not supported by default: add 
Module 
"org.apache.flink.shaded.jackson2.com.fasterxml.jackson.datatype:jackson-datatype-jsr310"
 to enable handling (through reference chain: java.util.HashMap["start_time"])
at 
org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.exc.InvalidDefinitionException.from(InvalidDefinitionException.java:77)
at 
org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.SerializerProvider.reportBadDefinition(SerializerProvider.java:1276)
at 
org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ser.impl.UnsupportedTypeSerializer.serialize(UnsupportedTypeSerializer.java:35)
at 
org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeFields(MapSerializer.java:808)
at 
org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeWithoutTypeInfo(MapSerializer.java:764)
at 
org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ser.std.MapSerializer.serialize(MapSerializer.java:720)
at 
org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ser.std.MapSerializer.serialize(MapSerializer.java:35)
at 
org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ser.DefaultSerializerProvider._serialize(DefaultSerializerProvider.java:480)
at 
org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ser.DefaultSerializerProvider.serializeValue(DefaultSerializerProvider.java:319)
at 
org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ObjectMapper._writeValueAndClose(ObjectMapper.java:4487)
at 
org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.ObjectMapper.writeValueAsString(ObjectMapper.java:3742)
at 
org.apache.flink.cdc.connectors.doris.sink.DorisEventSerializer.applyDataChangeEvent(DorisEventSerializer.java:159)
at 
org.apache.flink.cdc.connectors.doris.sink.DorisEventSerializer.serialize(DorisEventSerializer.java:92)
at 
org.apache.flink.cdc.connectors.doris.sink.DorisEventSerializer.serialize(DorisEventSerializer.java:59)
{noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to