This is an automated email from the ASF dual-hosted git repository. yunqing pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/inlong.git
The following commit(s) were added to refs/heads/master by this push: new d7a639b5b [INLONG-7186][Sort] Fix time zone incorrect (#7187) d7a639b5b is described below commit d7a639b5b215e4df95ff6b4c717654557a5be247 Author: emhui <111486498+e-m...@users.noreply.github.com> AuthorDate: Mon Jan 9 10:57:06 2023 +0800 [INLONG-7186][Sort] Fix time zone incorrect (#7187) * [INLONG-7186][Sort] Fix time zone incorrect * [INLONG-7186][Sort] Remove unused imports --- .../apache/inlong/sort/base/format/JsonToRowDataConverters.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/inlong-sort/sort-connectors/base/src/main/java/org/apache/inlong/sort/base/format/JsonToRowDataConverters.java b/inlong-sort/sort-connectors/base/src/main/java/org/apache/inlong/sort/base/format/JsonToRowDataConverters.java index b30e707ec..5d8b8206b 100644 --- a/inlong-sort/sort-connectors/base/src/main/java/org/apache/inlong/sort/base/format/JsonToRowDataConverters.java +++ b/inlong-sort/sort-connectors/base/src/main/java/org/apache/inlong/sort/base/format/JsonToRowDataConverters.java @@ -17,6 +17,8 @@ package org.apache.inlong.sort.base.format; +import java.sql.Timestamp; +import java.time.ZoneId; import org.apache.flink.annotation.Internal; import org.apache.flink.formats.common.TimestampFormat; import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.JsonNode; @@ -49,7 +51,6 @@ import java.math.BigDecimal; import java.time.LocalDate; import java.time.LocalDateTime; import java.time.LocalTime; -import java.time.ZoneOffset; import java.time.format.DateTimeParseException; import java.time.temporal.TemporalAccessor; import java.time.temporal.TemporalQueries; @@ -253,7 +254,7 @@ public class JsonToRowDataConverters implements Serializable { LocalTime localTime = parsedTimestamp.query(TemporalQueries.localTime()); LocalDate localDate = parsedTimestamp.query(TemporalQueries.localDate()); - return TimestampData.fromLocalDateTime(LocalDateTime.of(localDate, localTime)); + return TimestampData.fromEpochMillis(Timestamp.valueOf(LocalDateTime.of(localDate, localTime)).getTime()); } private TimestampData convertToTimestampWithLocalZone(JsonNode jsonNode) { @@ -277,7 +278,7 @@ public class JsonToRowDataConverters implements Serializable { LocalDate localDate = parsedTimestampWithLocalZone.query(TemporalQueries.localDate()); return TimestampData.fromInstant( - LocalDateTime.of(localDate, localTime).toInstant(ZoneOffset.UTC)); + LocalDateTime.of(localDate, localTime).atZone(ZoneId.systemDefault()).toInstant()); } private StringData convertToString(JsonNode jsonNode) {