diff --git a/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-mysql-cdc/src/main/java/io/debezium/connector/mysql/converters/MysqlDebeziumTimeConverter.java b/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-mysql-cdc/src/main/java/io/debezium/connector/mysql/converters/MysqlDebeziumTimeConverter.java index 493fd682c20..c893d18011e 100644 --- a/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-mysql-cdc/src/main/java/io/debezium/connector/mysql/converters/MysqlDebeziumTimeConverter.java +++ b/flink-cdc-connect/flink-cdc-source-connectors/flink-connector-mysql-cdc/src/main/java/io/debezium/connector/mysql/converters/MysqlDebeziumTimeConverter.java @@ -61,7 +61,11 @@ public class MysqlDebeziumTimeConverter private static boolean loggedUnknownTimeClass = false; private static boolean loggedUnknownTimestampWithTimeZoneClass = false; - private final String[] DATE_TYPES = {"DATE", "DATETIME", "TIME", "TIMESTAMP"}; + private final String DATE = "DATE"; + private final String DATETIME = "DATETIME"; + private final String TIME = "TIME"; + private final String TIMESTAMP = "TIMESTAMP"; + private final String[] DATE_TYPES = {DATE, DATETIME, TIME, TIMESTAMP}; protected static final String DATE_FORMAT = "yyyy-MM-dd"; protected static final String TIME_FORMAT = "yyyy-MM-dd HH:mm:ss"; @@ -124,13 +128,13 @@ private void registerDateConverter( return convertDateDefaultValue(field); } switch (columnType.toUpperCase(Locale.ROOT)) { - case "DATE": + case DATE: if (value instanceof Integer) { return this.convertToDate( columnType, LocalDate.ofEpochDay((Integer) value)); } return this.convertToDate(columnType, value); - case "TIME": + case TIME: if (value instanceof Long) { long l = Math.multiplyExact( @@ -138,7 +142,7 @@ private void registerDateConverter( return this.convertToTime(columnType, LocalTime.ofNanoOfDay(l)); } return this.convertToTime(columnType, value); - case "DATETIME": + case DATETIME: if (value instanceof Long) { if (getTimePrecision(field) <= 3) { return this.convertToTimestamp( @@ -152,7 +156,7 @@ private void registerDateConverter( } } return this.convertToTimestamp(columnType, value); - case "TIMESTAMP": + case TIMESTAMP: return this.convertToTimestampWithTimezone(columnType, value); default: throw new IllegalArgumentException( @@ -303,13 +307,13 @@ public Object convertDateDefaultValue(RelationalColumn field) { LocalDateTime.parse(DEFAULT_DATE_FORMAT_PATTERN, originalFormat); String columnType = field.typeName().toUpperCase(); switch (columnType.toUpperCase(Locale.ROOT)) { - case "DATE": + case DATE: return dateTime.format(dateFormatter); - case "DATETIME": + case DATETIME: return dateTime.format(datetimeFormatter); - case "TIME": + case TIME: return dateTime.format(timeFormatter); - case "TIMESTAMP": + case TIMESTAMP: return dateTime.format(timestampFormatter); } }