【详述】用4.0.6做sql explain报错Multiple entries with same key: 230: expr AND 229: expr=233: expr and 229: expr AND 230: expr=232: expr
【StarRocks版本】4.0.6
异常栈:
java.lang.IllegalArgumentException: Multiple entries with same key: 230: expr AND 229: expr=233: expr and 229: expr AND 230: expr=232: expr
at com.google.common.collect.ImmutableMap.conflictException(ImmutableMap.java:378) ~[spark-dpp-1.0.0.jar:?]
at com.google.common.collect.ImmutableMap.checkNoConflict(ImmutableMap.java:372) ~[spark-dpp-1.0.0.jar:?]
at com.google.common.collect.RegularImmutableMap.checkNoConflictInKeyBucket(RegularImmutableMap.java:246) ~[spark-dpp-1.0.0.jar:?]
at com.google.common.collect.RegularImmutableMap.fromEntryArrayCheckingBucketOverflow(RegularImmutableMap.java:133) ~[spark-dpp-1.0.0.jar:?]
at com.google.common.collect.RegularImmutableMap.fromEntryArray(RegularImmutableMap.java:95) ~[spark-dpp-1.0.0.jar:?]
at com.google.common.collect.ImmutableMap$Builder.build(ImmutableMap.java:572) ~[spark-dpp-1.0.0.jar:?]
at com.google.common.collect.ImmutableMap$Builder.buildOrThrow(ImmutableMap.java:600) ~[spark-dpp-1.0.0.jar:?]
at com.google.common.collect.ImmutableMap$Builder.build(ImmutableMap.java:587) ~[spark-dpp-1.0.0.jar:?]
at com.starrocks.sql.optimizer.rule.tree.exprreuse.ScalarOperatorsReuse.collectCommonSubScalarOperators(ScalarOperatorsReuse.java:142) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.rule.tree.exprreuse.ScalarOperatorsReuse.rewriteProjectionOrLambdaExpr(ScalarOperatorsReuse.java:491) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.rule.tree.exprreuse.ScalarOperatorsReuseRule$ReuseVisitor.rewriteProject(ScalarOperatorsReuseRule.java:75) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.rule.tree.exprreuse.ScalarOperatorsReuseRule$ReuseVisitor.visit(ScalarOperatorsReuseRule.java:46) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.rule.tree.exprreuse.ScalarOperatorsReuseRule$ReuseVisitor.visit(ScalarOperatorsReuseRule.java:42) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.OptExpressionVisitor.visitPhysicalJoin(OptExpressionVisitor.java:214) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.OptExpressionVisitor.visitPhysicalHashJoin(OptExpressionVisitor.java:206) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.operator.physical.PhysicalHashJoinOperator.accept(PhysicalHashJoinOperator.java:54) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.rule.tree.exprreuse.ScalarOperatorsReuseRule$ReuseVisitor.visit(ScalarOperatorsReuseRule.java:60) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.rule.tree.exprreuse.ScalarOperatorsReuseRule$ReuseVisitor.visit(ScalarOperatorsReuseRule.java:42) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.OptExpressionVisitor.visitPhysicalHashAggregate(OptExpressionVisitor.java:194) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.operator.physical.PhysicalHashAggregateOperator.accept(PhysicalHashAggregateOperator.java:303) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.rule.tree.exprreuse.ScalarOperatorsReuseRule$ReuseVisitor.visit(ScalarOperatorsReuseRule.java:60) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.rule.tree.exprreuse.ScalarOperatorsReuseRule$ReuseVisitor.visit(ScalarOperatorsReuseRule.java:42) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.OptExpressionVisitor.visitPhysicalDistribution(OptExpressionVisitor.java:202) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.operator.physical.PhysicalDistributionOperator.accept(PhysicalDistributionOperator.java:75) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.rule.tree.exprreuse.ScalarOperatorsReuseRule$ReuseVisitor.visit(ScalarOperatorsReuseRule.java:60) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.rule.tree.exprreuse.ScalarOperatorsReuseRule$ReuseVisitor.visit(ScalarOperatorsReuseRule.java:42) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.OptExpressionVisitor.visitPhysicalHashAggregate(OptExpressionVisitor.java:194) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.operator.physical.PhysicalHashAggregateOperator.accept(PhysicalHashAggregateOperator.java:303) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.rule.tree.exprreuse.ScalarOperatorsReuseRule$ReuseVisitor.visit(ScalarOperatorsReuseRule.java:60) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.rule.tree.exprreuse.ScalarOperatorsReuseRule$ReuseVisitor.visit(ScalarOperatorsReuseRule.java:42) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.OptExpressionVisitor.visitPhysicalDistribution(OptExpressionVisitor.java:202) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.operator.physical.PhysicalDistributionOperator.accept(PhysicalDistributionOperator.java:75) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.rule.tree.exprreuse.ScalarOperatorsReuseRule$ReuseVisitor.visit(ScalarOperatorsReuseRule.java:60) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.rule.tree.exprreuse.ScalarOperatorsReuseRule$ReuseVisitor.visit(ScalarOperatorsReuseRule.java:42) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.OptExpressionVisitor.visitPhysicalLimit(OptExpressionVisitor.java:266) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.operator.physical.PhysicalLimitOperator.accept(PhysicalLimitOperator.java:58) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.rule.tree.exprreuse.ScalarOperatorsReuseRule.rewrite(ScalarOperatorsReuseRule.java:38) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.QueryOptimizer.physicalRuleRewrite(QueryOptimizer.java:1015) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.QueryOptimizer.optimizeByCost(QueryOptimizer.java:301) ~[starrocks-fe.jar:?]
at com.starrocks.sql.optimizer.QueryOptimizer.optimize(QueryOptimizer.java:210) ~[starrocks-fe.jar:?]
at com.starrocks.sql.StatementPlanner.createQueryPlanWithReTry(StatementPlanner.java:404) ~[starrocks-fe.jar:?]
at com.starrocks.sql.StatementPlanner.plan(StatementPlanner.java:154) ~[starrocks-fe.jar:?]
at com.starrocks.sql.StatementPlanner.plan(StatementPlanner.java:108) ~[starrocks-fe.jar:?]
at com.starrocks.qe.StmtExecutor.generateExecPlan(StmtExecutor.java:708) ~[starrocks-fe.jar:?]
at com.starrocks.qe.StmtExecutor.execute(StmtExecutor.java:819) ~[starrocks-fe.jar:?]
at com.starrocks.qe.ConnectProcessor.executeQueryAttempt(ConnectProcessor.java:573) ~[starrocks-fe.jar:?]
at com.starrocks.qe.ConnectProcessor.runWithParserStageRetry(ConnectProcessor.java:470) ~[starrocks-fe.jar:?]
at com.starrocks.qe.ConnectProcessor.handleQuery(ConnectProcessor.java:407) ~[starrocks-fe.jar:?]
at com.starrocks.qe.ConnectProcessor.dispatch(ConnectProcessor.java:784) ~[starrocks-fe.jar:?]
at com.starrocks.qe.ConnectProcessor.processOnce(ConnectProcessor.java:1161) ~[starrocks-fe.jar:?]
at com.starrocks.mysql.nio.MySQLReadListener.handleRequest(MySQLReadListener.java:152) ~[starrocks-fe.jar:?]
at com.starrocks.mysql.nio.MySQLReadListener.lambda$handleEvent$0(MySQLReadListener.java:92) ~[starrocks-fe.jar:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
at java.lang.Thread.run(Thread.java:840) ~[?:?]