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/08/08 12:38:30 UTC

[flink] 08/09: [FLINK-13561][table-planner-blink] Fix NOW() should return TIMESTAMP instead of BIGINT.

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

commit c365780e7527a917e9d127694cd80cf2cdabf247
Author: Jark Wu <im...@gmail.com>
AuthorDate: Wed Aug 7 11:59:57 2019 +0800

    [FLINK-13561][table-planner-blink] Fix NOW() should return TIMESTAMP instead of BIGINT.
    
    This aligns the behavior to other systems (MySQL, Spark). Because NOW() is Synonyms for CURRENT_TIMESTAMP.
---
 .../flink/table/planner/functions/sql/FlinkSqlOperatorTable.java    | 6 ++----
 .../apache/flink/table/planner/codegen/calls/BuiltInMethods.scala   | 3 ---
 .../flink/table/planner/codegen/calls/FunctionGenerator.scala       | 5 -----
 3 files changed, 2 insertions(+), 12 deletions(-)

diff --git a/flink-table/flink-table-planner-blink/src/main/java/org/apache/flink/table/planner/functions/sql/FlinkSqlOperatorTable.java b/flink-table/flink-table-planner-blink/src/main/java/org/apache/flink/table/planner/functions/sql/FlinkSqlOperatorTable.java
index b619eb5..b3d91ae 100644
--- a/flink-table/flink-table-planner-blink/src/main/java/org/apache/flink/table/planner/functions/sql/FlinkSqlOperatorTable.java
+++ b/flink-table/flink-table-planner-blink/src/main/java/org/apache/flink/table/planner/functions/sql/FlinkSqlOperatorTable.java
@@ -606,11 +606,9 @@ public class FlinkSqlOperatorTable extends ReflectiveSqlOperatorTable {
 	public static final SqlFunction NOW = new SqlFunction(
 		"NOW",
 		SqlKind.OTHER_FUNCTION,
-		ReturnTypes.BIGINT,
+		ReturnTypes.explicit(SqlTypeName.TIMESTAMP, 0),
 		null,
-		OperandTypes.or(
-			OperandTypes.NILADIC,
-			OperandTypes.family(SqlTypeFamily.INTEGER)),
+		OperandTypes.NILADIC,
 		SqlFunctionCategory.TIMEDATE) {
 
 		@Override
diff --git a/flink-table/flink-table-planner-blink/src/main/scala/org/apache/flink/table/planner/codegen/calls/BuiltInMethods.scala b/flink-table/flink-table-planner-blink/src/main/scala/org/apache/flink/table/planner/codegen/calls/BuiltInMethods.scala
index d40f9f0..11c6149 100644
--- a/flink-table/flink-table-planner-blink/src/main/scala/org/apache/flink/table/planner/codegen/calls/BuiltInMethods.scala
+++ b/flink-table/flink-table-planner-blink/src/main/scala/org/apache/flink/table/planner/codegen/calls/BuiltInMethods.scala
@@ -245,9 +245,6 @@ object BuiltInMethods {
   val NOW = Types.lookupMethod(
     classOf[SqlDateTimeUtils], "now")
 
-  val NOW_OFFSET = Types.lookupMethod(
-    classOf[SqlDateTimeUtils], "now", classOf[Long])
-
   val DATE_FORMAT_STRING_STRING_STRING_TIME_ZONE = Types.lookupMethod(
     classOf[SqlDateTimeUtils], "dateFormat", classOf[String],
     classOf[String], classOf[String], classOf[TimeZone])
diff --git a/flink-table/flink-table-planner-blink/src/main/scala/org/apache/flink/table/planner/codegen/calls/FunctionGenerator.scala b/flink-table/flink-table-planner-blink/src/main/scala/org/apache/flink/table/planner/codegen/calls/FunctionGenerator.scala
index bf80027..5769b55 100644
--- a/flink-table/flink-table-planner-blink/src/main/scala/org/apache/flink/table/planner/codegen/calls/FunctionGenerator.scala
+++ b/flink-table/flink-table-planner-blink/src/main/scala/org/apache/flink/table/planner/codegen/calls/FunctionGenerator.scala
@@ -629,11 +629,6 @@ object FunctionGenerator {
     BuiltInMethods.NOW)
 
   addSqlFunctionMethod(
-    NOW,
-    Seq(INTEGER),
-    BuiltInMethods.NOW_OFFSET)
-
-  addSqlFunctionMethod(
     UNIX_TIMESTAMP,
     Seq(),
     BuiltInMethods.UNIX_TIMESTAMP)