This is an automated email from the ASF dual-hosted git repository. morrysnow pushed a commit to branch branch-2.0 in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/branch-2.0 by this push: new 6c34de6adf3 [fix](Nereids) datetimev2 literal equals should compare microsecond (#40121) (#40279) 6c34de6adf3 is described below commit 6c34de6adf3f1633fa6f7492735331761b78239b Author: morrySnow <101034200+morrys...@users.noreply.github.com> AuthorDate: Mon Sep 2 21:45:49 2024 +0800 [fix](Nereids) datetimev2 literal equals should compare microsecond (#40121) (#40279) pick from master #40121 --- .../nereids/trees/expressions/literal/DateTimeV2Literal.java | 7 ++++++- .../nereids/trees/expressions/literal/DateTimeLiteralTest.java | 10 ++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/literal/DateTimeV2Literal.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/literal/DateTimeV2Literal.java index 784167c81ca..fea92fd86ec 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/literal/DateTimeV2Literal.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/literal/DateTimeV2Literal.java @@ -99,6 +99,11 @@ public class DateTimeV2Literal extends DateTimeLiteral { getDataType().toCatalogDataType()); } + @Override + public double getDouble() { + return super.getDouble() + microSecond / 1000000.0; + } + @Override public String toString() { return getStringValue(); @@ -233,6 +238,6 @@ public class DateTimeV2Literal extends DateTimeLiteral { return false; } DateTimeV2Literal literal = (DateTimeV2Literal) o; - return Objects.equals(dataType, literal.dataType); + return Objects.equals(dataType, literal.dataType) && Objects.equals(microSecond, literal.microSecond); } } diff --git a/fe/fe-core/src/test/java/org/apache/doris/nereids/trees/expressions/literal/DateTimeLiteralTest.java b/fe/fe-core/src/test/java/org/apache/doris/nereids/trees/expressions/literal/DateTimeLiteralTest.java index a7553ef658b..e7606cca352 100644 --- a/fe/fe-core/src/test/java/org/apache/doris/nereids/trees/expressions/literal/DateTimeLiteralTest.java +++ b/fe/fe-core/src/test/java/org/apache/doris/nereids/trees/expressions/literal/DateTimeLiteralTest.java @@ -485,4 +485,14 @@ class DateTimeLiteralTest { Assertions.assertEquals(1, literal.roundCeiling(0).month); Assertions.assertEquals(2001, literal.roundCeiling(0).year); } + + @Test + void testEquals() { + DateTimeV2Literal l1 = new DateTimeV2Literal(1, 1, 1, 1, 1, 1, 1); + DateTimeV2Literal l2 = new DateTimeV2Literal(1, 1, 1, 1, 1, 1, 1); + DateTimeV2Literal l3 = new DateTimeV2Literal(1, 1, 1, 1, 1, 1, 2); + + Assertions.assertEquals(l1, l2); + Assertions.assertNotEquals(l1, l3); + } } --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org