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:25 UTC
[flink] 03/09: [FLINK-13561][table-planner-blink] Drop
CONVERT_TZ(timestamp, format, from_tz, to_tz) function support
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 d01cfb0cdedea79b2b946b7c3367b29a787d3e79
Author: Jark Wu <im...@gmail.com>
AuthorDate: Wed Aug 7 13:40:57 2019 +0800
[FLINK-13561][table-planner-blink] Drop CONVERT_TZ(timestamp, format, from_tz, to_tz) function support
This commit drops CONVERT_TZ(timestamp, format, from_tz, to_tz) function support in blink planner to align with other systems. We only support CONVERT_TZ(timestamp, from_tz, to_tz) in this version.
---
.../flink/table/planner/functions/sql/FlinkSqlOperatorTable.java | 5 +----
.../apache/flink/table/planner/codegen/calls/StringCallGen.scala | 7 -------
.../apache/flink/table/planner/expressions/TemporalTypesTest.scala | 6 +++---
3 files changed, 4 insertions(+), 14 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 5219a11..e27e458 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
@@ -782,10 +782,7 @@ public class FlinkSqlOperatorTable extends ReflectiveSqlOperatorTable {
SqlKind.OTHER_FUNCTION,
ReturnTypes.cascade(ReturnTypes.explicit(SqlTypeName.VARCHAR), SqlTypeTransforms.FORCE_NULLABLE),
null,
- OperandTypes.or(
- OperandTypes.family(SqlTypeFamily.STRING, SqlTypeFamily.STRING, SqlTypeFamily.STRING),
- OperandTypes.family(SqlTypeFamily.STRING, SqlTypeFamily.STRING,
- SqlTypeFamily.STRING, SqlTypeFamily.STRING)),
+ OperandTypes.family(SqlTypeFamily.STRING, SqlTypeFamily.STRING, SqlTypeFamily.STRING),
SqlFunctionCategory.TIMEDATE);
public static final SqlFunction LOCATE = new SqlFunction(
diff --git a/flink-table/flink-table-planner-blink/src/main/scala/org/apache/flink/table/planner/codegen/calls/StringCallGen.scala b/flink-table/flink-table-planner-blink/src/main/scala/org/apache/flink/table/planner/codegen/calls/StringCallGen.scala
index aac9010..7c4a129 100644
--- a/flink-table/flink-table-planner-blink/src/main/scala/org/apache/flink/table/planner/codegen/calls/StringCallGen.scala
+++ b/flink-table/flink-table-planner-blink/src/main/scala/org/apache/flink/table/planner/codegen/calls/StringCallGen.scala
@@ -227,13 +227,6 @@ object StringCallGen {
isCharacterString(operands(2).resultType) =>
methodGen(BuiltInMethods.CONVERT_TZ)
- case CONVERT_TZ if operands.size == 4 &&
- isCharacterString(operands.head.resultType) &&
- isCharacterString(operands(1).resultType) &&
- isCharacterString(operands(2).resultType) &&
- isCharacterString(operands(3).resultType) =>
- methodGen(BuiltInMethods.CONVERT_FORMAT_TZ)
-
case _ => null
}
diff --git a/flink-table/flink-table-planner-blink/src/test/scala/org/apache/flink/table/planner/expressions/TemporalTypesTest.scala b/flink-table/flink-table-planner-blink/src/test/scala/org/apache/flink/table/planner/expressions/TemporalTypesTest.scala
index 86175d1..e4b98c5 100644
--- a/flink-table/flink-table-planner-blink/src/test/scala/org/apache/flink/table/planner/expressions/TemporalTypesTest.scala
+++ b/flink-table/flink-table-planner-blink/src/test/scala/org/apache/flink/table/planner/expressions/TemporalTypesTest.scala
@@ -854,7 +854,7 @@ class TemporalTypesTest extends ExpressionTestBase {
testSqlApi(s"TO_TIMESTAMP('$invalidStr', 'yyyy-mm-dd')", nullable)
testSqlApi(s"TO_DATE('$invalidStr')", nullable)
testSqlApi(
- s"CONVERT_TZ('$invalidStr', 'yyyy-MM-dd HH:mm:ss', 'UTC', 'Asia/Shanghai')",
+ s"CONVERT_TZ('$invalidStr', 'UTC', 'Asia/Shanghai')",
nullable)
}
@@ -865,7 +865,7 @@ class TemporalTypesTest extends ExpressionTestBase {
s"DATE_FORMAT('$invalidStr', 'yyyy/MM/dd HH:mm:ss')",
s"TO_TIMESTAMP('$invalidStr', 'yyyy-mm-dd')",
s"TO_DATE('$invalidStr')",
- s"CONVERT_TZ('$invalidStr', 'yyyy-MM-dd HH:mm:ss', 'UTC', 'Asia/Shanghai')")
+ s"CONVERT_TZ('$invalidStr', 'UTC', 'Asia/Shanghai')")
cases.foreach {
caseExpr =>
@@ -875,7 +875,7 @@ class TemporalTypesTest extends ExpressionTestBase {
@Test
def testConvertTZ(): Unit = {
- testSqlApi("CONVERT_TZ('2018-03-14 11:00:00', 'yyyy-MM-dd HH:mm:ss', 'UTC', 'Asia/Shanghai')",
+ testSqlApi("CONVERT_TZ('2018-03-14 11:00:00', 'UTC', 'Asia/Shanghai')",
"2018-03-14 19:00:00")
}