You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user-zh@flink.apache.org by Asahi Lee <97...@qq.com.INVALID> on 2021/07/30 13:06:09 UTC

flink 1.13.1 使用hive方言,like语法不支持?

hi!我使用hive方言,执行插入sql,使用like表达式,报调用不支持错误


错误:
org.apache.flink.table.planner.codegen.CodeGenException: Unsupported call: like(VARCHAR(255), STRING NOT NULL)&nbsp;


org.apache.flink.table.planner.codegen.CodeGenException: Unsupported call: like(STRING, STRING NOT NULL)&nbsp;
If you think this function should be supported, you can create an issue and start a discussion for it.
	at org.apache.flink.table.planner.codegen.ExprCodeGenerator$$anonfun$generateCallExpression$5$$anonfun$apply$2.apply(ExprCodeGenerator.scala:845) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
	at org.apache.flink.table.planner.codegen.ExprCodeGenerator$$anonfun$generateCallExpression$5$$anonfun$apply$2.apply(ExprCodeGenerator.scala:845) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
	at scala.Option.getOrElse(Option.scala:121) ~[flink-dist_2.11-1.13.1.jar:1.13.1]
	at org.apache.flink.table.planner.codegen.ExprCodeGenerator$$anonfun$generateCallExpression$5.apply(ExprCodeGenerator.scala:844) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
	at org.apache.flink.table.planner.codegen.ExprCodeGenerator$$anonfun$generateCallExpression$5.apply(ExprCodeGenerator.scala:849) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
	at scala.Option.getOrElse(Option.scala:121) ~[flink-dist_2.11-1.13.1.jar:1.13.1]
	at org.apache.flink.table.planner.codegen.ExprCodeGenerator.generateCallExpression(ExprCodeGenerator.scala:837) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
	at org.apache.flink.table.planner.codegen.ExprCodeGenerator.visitCall(ExprCodeGenerator.scala:529) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
	at org.apache.flink.table.planner.codegen.ExprCodeGenerator.visitCall(ExprCodeGenerator.scala:56) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
	at org.apache.calcite.rex.RexCall.accept(RexCall.java:174) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
	at org.apache.flink.table.planner.codegen.ExprCodeGenerator.generateExpression(ExprCodeGenerator.scala:155) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
	at org.apache.flink.table.planner.codegen.CalcCodeGenerator$.generateProcessCode(CalcCodeGenerator.scala:173) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
	at org.apache.flink.table.planner.codegen.CalcCodeGenerator$.generateCalcOperator(CalcCodeGenerator.scala:50) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
	at org.apache.flink.table.planner.codegen.CalcCodeGenerator.generateCalcOperator(CalcCodeGenerator.scala) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
	at org.apache.flink.table.planner.plan.nodes.exec.common.CommonExecCalc.translateToPlanInternal(CommonExecCalc.java:94) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
	at org.apache.flink.table.planner.plan.nodes.exec.ExecNodeBase.translateToPlan(ExecNodeBase.java:134) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
	at org.apache.flink.table.planner.plan.nodes.exec.ExecEdge.translateToPlan(ExecEdge.java:247) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
	at org.apache.flink.table.planner.plan.nodes.exec.batch.BatchExecSink.translateToPlanInternal(BatchExecSink.java:58) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
	at org.apache.flink.table.planner.plan.nodes.exec.ExecNodeBase.translateToPlan(ExecNodeBase.java:134) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
	at org.apache.flink.table.planner.delegation.BatchPlanner$$anonfun$translateToPlan$1.apply(BatchPlanner.scala:80) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
	at org.apache.flink.table.planner.delegation.BatchPlanner$$anonfun$translateToPlan$1.apply(BatchPlanner.scala:79) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
	at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234) ~[flink-dist_2.11-1.13.1.jar:1.13.1]
	at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234) ~[flink-dist_2.11-1.13.1.jar:1.13.1]
	at scala.collection.Iterator$class.foreach(Iterator.scala:891) ~[flink-dist_2.11-1.13.1.jar:1.13.1]
	at scala.collection.AbstractIterator.foreach(Iterator.scala:1334) ~[flink-dist_2.11-1.13.1.jar:1.13.1]
	at scala.collection.IterableLike$class.foreach(IterableLike.scala:72) ~[flink-dist_2.11-1.13.1.jar:1.13.1]
	at scala.collection.AbstractIterable.foreach(Iterable.scala:54) ~[flink-dist_2.11-1.13.1.jar:1.13.1]
	at scala.collection.TraversableLike$class.map(TraversableLike.scala:234) ~[flink-dist_2.11-1.13.1.jar:1.13.1]
	at scala.collection.AbstractTraversable.map(Traversable.scala:104) ~[flink-dist_2.11-1.13.1.jar:1.13.1]
	at org.apache.flink.table.planner.delegation.BatchPlanner.translateToPlan(BatchPlanner.scala:79) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
	at org.apache.flink.table.planner.delegation.PlannerBase.translate(PlannerBase.scala:165) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
	at org.apache.flink.table.api.internal.TableEnvironmentImpl.translate(TableEnvironmentImpl.java:1518) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
	at org.apache.flink.table.api.internal.TableEnvironmentImpl.executeInternal(TableEnvironmentImpl.java:740) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
	at org.apache.flink.table.api.internal.StatementSetImpl.execute(StatementSetImpl.java:99) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]



sql:
CREATE CATALOG `tempo_df_hive_default_catalog` WITH(
&nbsp; &nbsp; 'type' = 'hive',
&nbsp; &nbsp; 'default-database' = 'default'
);
USE CATALOG tempo_df_hive_default_catalog;
CREATE TABLE IF NOT EXISTS `default`.`tempo_blackhole_table` (
&nbsp; &nbsp;f0 INT
);use tempo_dw;
insert into table1 select * from table2 where cast(code as string) like 'qw%';
INSERT INTO `default`.`tempo_blackhole_table` SELECT 1

Re: flink 1.13.1 使用hive方言,like语法不支持?

Posted by Rui Li <li...@gmail.com>.
有没有加载hive module呢?hive dialect要跟hive module一起用的

On Mon, Aug 2, 2021 at 9:56 AM johnjlong <jo...@163.com> wrote:

>
> johnjlong
> johnjlong@163.com
>
> <https://maas.mail.163.com/dashi-web-extend/html/proSignature.html?ftlId=1&name=johnjlong&uid=johnjlong%40163.com&iconUrl=https%3A%2F%2Fmail-online.nosdn.127.net%2Fqiyelogo%2FdefaultAvatar.png&items=%5B%22johnjlong%40163.com%22%5D>
> 签名由 网易邮箱大师 <https://mail.163.com/dashi/dlpro.html?from=mail81> 定制
> 在2021年7月30日 21:07,Asahi Lee<97...@qq.com.INVALID>
> <97...@qq.com.INVALID> 写道:
>
> hi!我使用hive方言,执行插入sql,使用like表达式,报调用不支持错误
>
>
> 错误:
> org.apache.flink.table.planner.codegen.CodeGenException: Unsupported call:
> like(VARCHAR(255), STRING NOT NULL)&nbsp;
>
>
> org.apache.flink.table.planner.codegen.CodeGenException: Unsupported call:
> like(STRING, STRING NOT NULL)&nbsp;
> If you think this function should be supported, you can create an issue
> and start a discussion for it.
> at
> org.apache.flink.table.planner.codegen.ExprCodeGenerator$$anonfun$generateCallExpression$5$$anonfun$apply$2.apply(ExprCodeGenerator.scala:845)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.codegen.ExprCodeGenerator$$anonfun$generateCallExpression$5$$anonfun$apply$2.apply(ExprCodeGenerator.scala:845)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at scala.Option.getOrElse(Option.scala:121)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.codegen.ExprCodeGenerator$$anonfun$generateCallExpression$5.apply(ExprCodeGenerator.scala:844)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.codegen.ExprCodeGenerator$$anonfun$generateCallExpression$5.apply(ExprCodeGenerator.scala:849)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at scala.Option.getOrElse(Option.scala:121)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.codegen.ExprCodeGenerator.generateCallExpression(ExprCodeGenerator.scala:837)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.codegen.ExprCodeGenerator.visitCall(ExprCodeGenerator.scala:529)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.codegen.ExprCodeGenerator.visitCall(ExprCodeGenerator.scala:56)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at org.apache.calcite.rex.RexCall.accept(RexCall.java:174)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.codegen.ExprCodeGenerator.generateExpression(ExprCodeGenerator.scala:155)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.codegen.CalcCodeGenerator$.generateProcessCode(CalcCodeGenerator.scala:173)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.codegen.CalcCodeGenerator$.generateCalcOperator(CalcCodeGenerator.scala:50)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.codegen.CalcCodeGenerator.generateCalcOperator(CalcCodeGenerator.scala)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.nodes.exec.common.CommonExecCalc.translateToPlanInternal(CommonExecCalc.java:94)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.nodes.exec.ExecNodeBase.translateToPlan(ExecNodeBase.java:134)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.nodes.exec.ExecEdge.translateToPlan(ExecEdge.java:247)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.nodes.exec.batch.BatchExecSink.translateToPlanInternal(BatchExecSink.java:58)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.plan.nodes.exec.ExecNodeBase.translateToPlan(ExecNodeBase.java:134)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.delegation.BatchPlanner$$anonfun$translateToPlan$1.apply(BatchPlanner.scala:80)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.delegation.BatchPlanner$$anonfun$translateToPlan$1.apply(BatchPlanner.scala:79)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at scala.collection.Iterator$class.foreach(Iterator.scala:891)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at scala.collection.AbstractIterator.foreach(Iterator.scala:1334)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at scala.collection.IterableLike$class.foreach(IterableLike.scala:72)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at scala.collection.AbstractIterable.foreach(Iterable.scala:54)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at scala.collection.TraversableLike$class.map(TraversableLike.scala:234)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at scala.collection.AbstractTraversable.map(Traversable.scala:104)
> ~[flink-dist_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.delegation.BatchPlanner.translateToPlan(BatchPlanner.scala:79)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.planner.delegation.PlannerBase.translate(PlannerBase.scala:165)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.api.internal.TableEnvironmentImpl.translate(TableEnvironmentImpl.java:1518)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.api.internal.TableEnvironmentImpl.executeInternal(TableEnvironmentImpl.java:740)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
> at
> org.apache.flink.table.api.internal.StatementSetImpl.execute(StatementSetImpl.java:99)
> ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
>
>
>
> sql:
> CREATE CATALOG `tempo_df_hive_default_catalog` WITH(
> &nbsp; &nbsp; 'type' = 'hive',
> &nbsp; &nbsp; 'default-database' = 'default'
> );
> USE CATALOG tempo_df_hive_default_catalog;
> CREATE TABLE IF NOT EXISTS `default`.`tempo_blackhole_table` (
> &nbsp; &nbsp;f0 INT
> );use tempo_dw;
> insert into table1 select * from table2 where cast(code as string) like
> 'qw%';
> INSERT INTO `default`.`tempo_blackhole_table` SELECT 1
>
>

-- 
Best regards!
Rui Li

回复:flink 1.13.1 使用hive方言,like语法不支持?

Posted by johnjlong <jo...@163.com>.

| |
johnjlong
|
|
johnjlong@163.com
|
签名由网易邮箱大师定制
在2021年7月30日 21:07,Asahi Lee<97...@qq.com.INVALID> 写道:
hi!我使用hive方言,执行插入sql,使用like表达式,报调用不支持错误


错误:
org.apache.flink.table.planner.codegen.CodeGenException: Unsupported call: like(VARCHAR(255), STRING NOT NULL)&nbsp;


org.apache.flink.table.planner.codegen.CodeGenException: Unsupported call: like(STRING, STRING NOT NULL)&nbsp;
If you think this function should be supported, you can create an issue and start a discussion for it.
at org.apache.flink.table.planner.codegen.ExprCodeGenerator$$anonfun$generateCallExpression$5$$anonfun$apply$2.apply(ExprCodeGenerator.scala:845) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
at org.apache.flink.table.planner.codegen.ExprCodeGenerator$$anonfun$generateCallExpression$5$$anonfun$apply$2.apply(ExprCodeGenerator.scala:845) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
at scala.Option.getOrElse(Option.scala:121) ~[flink-dist_2.11-1.13.1.jar:1.13.1]
at org.apache.flink.table.planner.codegen.ExprCodeGenerator$$anonfun$generateCallExpression$5.apply(ExprCodeGenerator.scala:844) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
at org.apache.flink.table.planner.codegen.ExprCodeGenerator$$anonfun$generateCallExpression$5.apply(ExprCodeGenerator.scala:849) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
at scala.Option.getOrElse(Option.scala:121) ~[flink-dist_2.11-1.13.1.jar:1.13.1]
at org.apache.flink.table.planner.codegen.ExprCodeGenerator.generateCallExpression(ExprCodeGenerator.scala:837) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
at org.apache.flink.table.planner.codegen.ExprCodeGenerator.visitCall(ExprCodeGenerator.scala:529) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
at org.apache.flink.table.planner.codegen.ExprCodeGenerator.visitCall(ExprCodeGenerator.scala:56) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
at org.apache.calcite.rex.RexCall.accept(RexCall.java:174) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
at org.apache.flink.table.planner.codegen.ExprCodeGenerator.generateExpression(ExprCodeGenerator.scala:155) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
at org.apache.flink.table.planner.codegen.CalcCodeGenerator$.generateProcessCode(CalcCodeGenerator.scala:173) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
at org.apache.flink.table.planner.codegen.CalcCodeGenerator$.generateCalcOperator(CalcCodeGenerator.scala:50) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
at org.apache.flink.table.planner.codegen.CalcCodeGenerator.generateCalcOperator(CalcCodeGenerator.scala) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
at org.apache.flink.table.planner.plan.nodes.exec.common.CommonExecCalc.translateToPlanInternal(CommonExecCalc.java:94) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
at org.apache.flink.table.planner.plan.nodes.exec.ExecNodeBase.translateToPlan(ExecNodeBase.java:134) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
at org.apache.flink.table.planner.plan.nodes.exec.ExecEdge.translateToPlan(ExecEdge.java:247) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
at org.apache.flink.table.planner.plan.nodes.exec.batch.BatchExecSink.translateToPlanInternal(BatchExecSink.java:58) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
at org.apache.flink.table.planner.plan.nodes.exec.ExecNodeBase.translateToPlan(ExecNodeBase.java:134) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
at org.apache.flink.table.planner.delegation.BatchPlanner$$anonfun$translateToPlan$1.apply(BatchPlanner.scala:80) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
at org.apache.flink.table.planner.delegation.BatchPlanner$$anonfun$translateToPlan$1.apply(BatchPlanner.scala:79) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234) ~[flink-dist_2.11-1.13.1.jar:1.13.1]
at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234) ~[flink-dist_2.11-1.13.1.jar:1.13.1]
at scala.collection.Iterator$class.foreach(Iterator.scala:891) ~[flink-dist_2.11-1.13.1.jar:1.13.1]
at scala.collection.AbstractIterator.foreach(Iterator.scala:1334) ~[flink-dist_2.11-1.13.1.jar:1.13.1]
at scala.collection.IterableLike$class.foreach(IterableLike.scala:72) ~[flink-dist_2.11-1.13.1.jar:1.13.1]
at scala.collection.AbstractIterable.foreach(Iterable.scala:54) ~[flink-dist_2.11-1.13.1.jar:1.13.1]
at scala.collection.TraversableLike$class.map(TraversableLike.scala:234) ~[flink-dist_2.11-1.13.1.jar:1.13.1]
at scala.collection.AbstractTraversable.map(Traversable.scala:104) ~[flink-dist_2.11-1.13.1.jar:1.13.1]
at org.apache.flink.table.planner.delegation.BatchPlanner.translateToPlan(BatchPlanner.scala:79) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
at org.apache.flink.table.planner.delegation.PlannerBase.translate(PlannerBase.scala:165) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
at org.apache.flink.table.api.internal.TableEnvironmentImpl.translate(TableEnvironmentImpl.java:1518) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
at org.apache.flink.table.api.internal.TableEnvironmentImpl.executeInternal(TableEnvironmentImpl.java:740) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]
at org.apache.flink.table.api.internal.StatementSetImpl.execute(StatementSetImpl.java:99) ~[flink-table-blink_2.11-1.13.1.jar:1.13.1]



sql:
CREATE CATALOG `tempo_df_hive_default_catalog` WITH(
&nbsp; &nbsp; 'type' = 'hive',
&nbsp; &nbsp; 'default-database' = 'default'
);
USE CATALOG tempo_df_hive_default_catalog;
CREATE TABLE IF NOT EXISTS `default`.`tempo_blackhole_table` (
&nbsp; &nbsp;f0 INT
);use tempo_dw;
insert into table1 select * from table2 where cast(code as string) like 'qw%';
INSERT INTO `default`.`tempo_blackhole_table` SELECT 1