You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flink.apache.org by "Zakelly Lan (Jira)" <ji...@apache.org> on 2025/01/24 17:03:00 UTC

[jira] [Created] (FLINK-37222) Table planner exception when sql client submit job

Zakelly Lan created FLINK-37222:
-----------------------------------

             Summary: Table planner exception when sql client submit job
                 Key: FLINK-37222
                 URL: https://issues.apache.org/jira/browse/FLINK-37222
             Project: Flink
          Issue Type: Bug
          Components: Table SQL / Planner
    Affects Versions: 2.0.0
            Reporter: Zakelly Lan


When testing [Nexmark|https://github.com/nexmark/nexmark] on release-2.0 branch, a table planner related exception thrown by the sql client:

{code:java}
// Omit some stacktraces before ....

Caused by: org.apache.flink.table.gateway.service.utils.SqlExecutionException: Failed to execute the operation d3516bc9-44c1-428e-ac10-2fb0ddd0c825.
	at org.apache.flink.table.gateway.service.operation.OperationManager$Operation.processThrowable(OperationManager.java:415)
	at org.apache.flink.table.gateway.service.operation.OperationManager$Operation.lambda$run$0(OperationManager.java:268)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	... 1 more
Caused by: java.lang.AssertionError: Sql optimization: Assertion error: Relational expression rel#714:LogicalProject.NONE.any.None: 0.[NONE].[NONE](input=LogicalAggregate#712,exprs=[$2, $1]) belongs to a different planner than is currently being used.
	at org.apache.flink.table.planner.plan.optimize.program.FlinkVolcanoProgram.optimize(FlinkVolcanoProgram.scala:79)
	at org.apache.flink.table.planner.plan.optimize.program.FlinkChainedProgram.$anonfun$optimize$1(FlinkChainedProgram.scala:59)
	at scala.collection.TraversableOnce$folder$1.apply(TraversableOnce.scala:196)
	at scala.collection.TraversableOnce$folder$1.apply(TraversableOnce.scala:194)
	at scala.collection.Iterator.foreach(Iterator.scala:943)
	at scala.collection.Iterator.foreach$(Iterator.scala:943)
	at scala.collection.AbstractIterator.foreach(Iterator.scala:1431)
	at scala.collection.IterableLike.foreach(IterableLike.scala:74)
	at scala.collection.IterableLike.foreach$(IterableLike.scala:73)
	at scala.collection.AbstractIterable.foreach(Iterable.scala:56)
	at scala.collection.TraversableOnce.foldLeft(TraversableOnce.scala:199)
	at scala.collection.TraversableOnce.foldLeft$(TraversableOnce.scala:192)
	at scala.collection.AbstractTraversable.foldLeft(Traversable.scala:108)
	at org.apache.flink.table.planner.plan.optimize.program.FlinkChainedProgram.optimize(FlinkChainedProgram.scala:55)
	at org.apache.flink.table.planner.plan.optimize.StreamCommonSubGraphBasedOptimizer.optimizeTree(StreamCommonSubGraphBasedOptimizer.scala:196)
	at org.apache.flink.table.planner.plan.optimize.StreamCommonSubGraphBasedOptimizer.optimizeSinkBlocks(StreamCommonSubGraphBasedOptimizer.scala:83)
	at org.apache.flink.table.planner.plan.optimize.StreamCommonSubGraphBasedOptimizer.doOptimize(StreamCommonSubGraphBasedOptimizer.scala:118)
	at org.apache.flink.table.planner.plan.optimize.CommonSubGraphBasedOptimizer.optimize(CommonSubGraphBasedOptimizer.scala:87)
	at org.apache.flink.table.planner.delegation.PlannerBase.optimize(PlannerBase.scala:390)
	at org.apache.flink.table.planner.delegation.PlannerBase.translate(PlannerBase.scala:183)
	at org.apache.flink.table.api.internal.TableEnvironmentImpl.translate(TableEnvironmentImpl.java:1352)
	at org.apache.flink.table.api.internal.TableEnvironmentImpl.executeInternal(TableEnvironmentImpl.java:930)
	at org.apache.flink.table.gateway.service.operation.OperationExecutor.callModifyOperations(OperationExecutor.java:662)
	at org.apache.flink.table.gateway.service.operation.OperationExecutor.executeOperation(OperationExecutor.java:500)
	at org.apache.flink.table.gateway.service.operation.OperationExecutor.executeStatement(OperationExecutor.java:262)
	at org.apache.flink.table.gateway.service.operation.OperationExecutor.executeStatement(OperationExecutor.java:217)
	at org.apache.flink.table.gateway.service.SqlGatewayServiceImpl.lambda$executeStatement$1(SqlGatewayServiceImpl.java:221)
	at org.apache.flink.table.gateway.service.operation.OperationManager.lambda$submitOperation$1(OperationManager.java:120)
	at org.apache.flink.table.gateway.service.operation.OperationManager$Operation.lambda$run$0(OperationManager.java:259)
	... 7 more
Caused by: java.lang.AssertionError: Relational expression rel#714:LogicalProject.NONE.any.None: 0.[NONE].[NONE](input=LogicalAggregate#712,exprs=[$2, $1]) belongs to a different planner than is currently being used.
	at org.apache.calcite.plan.volcano.VolcanoPlanner.registerImpl(VolcanoPlanner.java:1248)
	at org.apache.calcite.plan.volcano.VolcanoPlanner.register(VolcanoPlanner.java:598)
	at org.apache.calcite.plan.volcano.VolcanoPlanner.ensureRegistered(VolcanoPlanner.java:613)
	at org.apache.calcite.plan.volcano.VolcanoPlanner.ensureRegistered(VolcanoPlanner.java:95)
	at org.apache.calcite.rel.AbstractRelNode.onRegister(AbstractRelNode.java:273)
	at org.apache.calcite.plan.volcano.VolcanoPlanner.registerImpl(VolcanoPlanner.java:1271)
	at org.apache.calcite.plan.volcano.VolcanoPlanner.register(VolcanoPlanner.java:598)
	at org.apache.calcite.plan.volcano.VolcanoPlanner.ensureRegistered(VolcanoPlanner.java:613)
	at org.apache.calcite.plan.volcano.VolcanoPlanner.ensureRegistered(VolcanoPlanner.java:95)
	at org.apache.calcite.rel.AbstractRelNode.onRegister(AbstractRelNode.java:273)
	at org.apache.calcite.plan.volcano.VolcanoPlanner.registerImpl(VolcanoPlanner.java:1271)
	at org.apache.calcite.plan.volcano.VolcanoPlanner.register(VolcanoPlanner.java:598)
	at org.apache.calcite.plan.volcano.VolcanoPlanner.ensureRegistered(VolcanoPlanner.java:613)
	at org.apache.calcite.plan.volcano.VolcanoPlanner.ensureRegistered(VolcanoPlanner.java:95)
	at org.apache.calcite.rel.AbstractRelNode.onRegister(AbstractRelNode.java:273)
	at org.apache.calcite.plan.volcano.VolcanoPlanner.registerImpl(VolcanoPlanner.java:1271)
	at org.apache.calcite.plan.volcano.VolcanoPlanner.register(VolcanoPlanner.java:598)
	at org.apache.calcite.plan.volcano.VolcanoPlanner.ensureRegistered(VolcanoPlanner.java:613)
	at org.apache.calcite.plan.volcano.VolcanoPlanner.changeTraits(VolcanoPlanner.java:498)
	at org.apache.calcite.tools.Programs$RuleSetProgram.run(Programs.java:314)
	at org.apache.flink.table.planner.plan.optimize.program.FlinkVolcanoProgram.optimize(FlinkVolcanoProgram.scala:62)
	... 35 more
{code}

I've tested on many commits and identified the commit https://github.com/apache/flink/pull/25952 may cause this. By reverting this commit on release-2.0, the problem solved.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)