You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flink.apache.org by ja...@apache.org on 2019/07/19 06:12:54 UTC

[flink] branch master updated: [FLINK-13302][table-planner] Fix CEIL(date) returns the same value with FLOOR(date)

This is an automated email from the ASF dual-hosted git repository.

jark pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/flink.git


The following commit(s) were added to refs/heads/master by this push:
     new 763dad4  [FLINK-13302][table-planner] Fix CEIL(date) returns the same value with FLOOR(date)
763dad4 is described below

commit 763dad49dcfe96fa56fb88da0a4d7d53e148f337
Author: Zhenghua Gao <do...@gmail.com>
AuthorDate: Wed Jul 17 18:40:40 2019 +0800

    [FLINK-13302][table-planner] Fix CEIL(date) returns the same value with FLOOR(date)
    
    This is a bug that DateTimeUtils.unixDateCeil returns the same value as unixDateFloor does.
    
    This closes #9160
---
 .../src/main/java/org/apache/calcite/avatica/util/DateTimeUtils.java | 3 ++-
 .../src/main/java/org/apache/calcite/avatica/util/DateTimeUtils.java | 5 +++--
 .../org/apache/flink/table/expressions/ScalarFunctionsTest.scala     | 4 ++--
 3 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/flink-table/flink-table-planner-blink/src/main/java/org/apache/calcite/avatica/util/DateTimeUtils.java b/flink-table/flink-table-planner-blink/src/main/java/org/apache/calcite/avatica/util/DateTimeUtils.java
index 23cadfb..fec3b4f 100644
--- a/flink-table/flink-table-planner-blink/src/main/java/org/apache/calcite/avatica/util/DateTimeUtils.java
+++ b/flink-table/flink-table-planner-blink/src/main/java/org/apache/calcite/avatica/util/DateTimeUtils.java
@@ -26,7 +26,8 @@ import java.util.Locale;
 import java.util.TimeZone;
 
 /*
- * THIS FILE HAS BEEN COPIED FROM THE APACHE CALCITE PROJECT UNTIL CALCITE-1884 IS FIXED.
+ * THIS FILE HAS BEEN COPIED FROM THE APACHE CALCITE PROJECT UNTIL CALCITE-1884, CALCITE-3199 IS FIXED.
+ * (Modified line: 839)
  */
 
 /**
diff --git a/flink-table/flink-table-planner/src/main/java/org/apache/calcite/avatica/util/DateTimeUtils.java b/flink-table/flink-table-planner/src/main/java/org/apache/calcite/avatica/util/DateTimeUtils.java
index fe09d18..2bb8515 100644
--- a/flink-table/flink-table-planner/src/main/java/org/apache/calcite/avatica/util/DateTimeUtils.java
+++ b/flink-table/flink-table-planner/src/main/java/org/apache/calcite/avatica/util/DateTimeUtils.java
@@ -26,7 +26,8 @@ import java.util.Locale;
 import java.util.TimeZone;
 
 /*
- * THIS FILE HAS BEEN COPIED FROM THE APACHE CALCITE PROJECT UNTIL CALCITE-1884 IS FIXED.
+ * THIS FILE HAS BEEN COPIED FROM THE APACHE CALCITE PROJECT UNTIL CALCITE-1884, CALCITE-3199 IS FIXED.
+ * (Modified line: 838)
  */
 
 /**
@@ -835,7 +836,7 @@ public class DateTimeUtils {
 	}
 
 	public static long unixDateCeil(TimeUnitRange range, long date) {
-		return julianDateFloor(range, (int) date + EPOCH_JULIAN, true);
+		return julianDateFloor(range, (int) date + EPOCH_JULIAN, false);
 	}
 
 	private static int julianDateFloor(TimeUnitRange range, int julian,
diff --git a/flink-table/flink-table-planner/src/test/scala/org/apache/flink/table/expressions/ScalarFunctionsTest.scala b/flink-table/flink-table-planner/src/test/scala/org/apache/flink/table/expressions/ScalarFunctionsTest.scala
index 4a32eb8..74804c7 100644
--- a/flink-table/flink-table-planner/src/test/scala/org/apache/flink/table/expressions/ScalarFunctionsTest.scala
+++ b/flink-table/flink-table-planner/src/test/scala/org/apache/flink/table/expressions/ScalarFunctionsTest.scala
@@ -2447,13 +2447,13 @@ class ScalarFunctionsTest extends ScalarTypesTestBase {
       'f16.ceil(TimeIntervalUnit.YEAR),
       "f16.ceil(YEAR)",
       "CEIL(f16 TO YEAR)",
-      "1996-01-01")
+      "1997-01-01")
 
     testAllApis(
       'f16.ceil(TimeIntervalUnit.MONTH),
       "f16.ceil(MONTH)",
       "CEIL(f16 TO MONTH)",
-      "1996-11-01")
+      "1996-12-01")
   }
 
   @Test