Impala Public Jenkins has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/23666 )

Change subject: WIP: do not review, Calcite patch with most fixes for v1 for 
full Jenkins run
......................................................................


Patch Set 18:

(58 comments)

gerrit-auto-critic failed. You can reproduce it locally using command:

  python3 bin/jenkins/critique-gerrit-review.py --dryrun

To run it, you might need a virtual env with Python3's venv installed.

http://gerrit.cloudera.org:8080/#/c/23666/18/fe/src/main/java/org/apache/impala/planner/Planner.java
File fe/src/main/java/org/apache/impala/planner/Planner.java:

http://gerrit.cloudera.org:8080/#/c/23666/18/fe/src/main/java/org/apache/impala/planner/Planner.java@833
PS18, Line 833:   public static boolean isInvertedJoinCheaper(JoinNode 
joinNode, boolean isLocalPlan, PlannerContext ctx) {
line too long (107 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/util/PrunedPartitionHelper.java
File 
java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/util/PrunedPartitionHelper.java:

http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/util/PrunedPartitionHelper.java@110
PS18, Line 110:     nonPartitionedCalciteConjunct_ = 
RexUtil.flatten(rexBuilder, simplifier.simplify(tmpCalciteConjunct));
line too long (106 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java
File 
java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java:

http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@153
PS18, Line 153:   protected static final Logger LOG = 
LoggerFactory.getLogger(ImpalaLoptOptimizeJoinRule.class.getName());
line too long (106 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2101
PS18, Line 2101:   private static boolean experiment(RelMetadataQuery mq, 
LoptMultiJoin multiJoin, LoptJoinTree leftTree, LoptJoinTree rightTree, RexNode 
condition, RexBuilder rexBuilder, boolean adjust) {
line too long (188 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2103
PS18, Line 2103:     RuntimeFilterInfo runtimeFilterInfo = 
multiJoinRel.getCluster().getPlanner().getContext().unwrap(RuntimeFilterInfo.class);
line too long (126 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2121
PS18, Line 2121:     for (RexNode andCondition : andConditions) {
line has trailing whitespace


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2122
PS18, Line 2122:       
runtimeFilterInfo.reductionMap_.putAll(createRuntimeFilterReductionContext(andCondition,
 adjust,
line too long (102 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2142
PS18, Line 2142:       leftTotalReduction = 
RuntimeFilterReductionContext.getTotalReduction(leftReductionList);
line too long (94 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2146
PS18, Line 2146:       rightTotalReduction = 
RuntimeFilterReductionContext.getTotalReduction(rightReductionList);
line too long (96 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2151
PS18, Line 2151: //    Double totalLeftReduction = leftTable.getRowCount() - 
leftTable.getRowCount() * leftReduction;
line too long (100 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2152
PS18, Line 2152: //    Double totalRightReduction = rightTable.getRowCount() - 
rightTable.getRowCount() * rightReduction;
line too long (104 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2172
PS18, Line 2172:     RelOptCost totalPreJoinNonSwapCost = 
leftSideWithFilterCost.plus(rightSideWithoutFilterCost);
line too long (97 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2173
PS18, Line 2173:     RelOptCost totalPreJoinSwapCost = 
leftSideWithoutFilterCost.plus(rightSideWithFilterCost);
line too long (94 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2175
PS18, Line 2175:     RelOptCost totalJoinNonSwapCost = 
totalPreJoinNonSwapCost.plus(ImpalaRelMdNonCumulativeCost.getJoinCost(leftSide, 
rightSide, mq));
line too long (134 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2176
PS18, Line 2176:     RelOptCost totalJoinSwapCost = 
totalPreJoinSwapCost.plus(ImpalaRelMdNonCumulativeCost.getJoinCost(rightSide, 
leftSide, mq));
line too long (128 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2202
PS18, Line 2202:   private static boolean swapBitSides(ImmutableBitSet bitSet, 
boolean adjust, LoptJoinTree rightTree, MultiJoin multiJoin) {
line too long (124 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2215
PS18, Line 2215:       startOfRightSideFields += 
multiJoin.getInputs().get(i).getRowType().getFieldList().size();
line too long (96 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2217
PS18, Line 2217:     int endOfRightSideFields = startOfRightSideFields + 
multiJoin.getInputs().get(factor).getRowType().getFieldList().size();
line too long (125 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2219
PS18, Line 2219:     return bitSet.nth(0) >= startOfRightSideFields && 
bitSet.nth(0) < endOfRightSideFields;
line too long (91 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2222
PS18, Line 2222:   private static Set<Integer> 
getLeftPreAdjustedIndexList(ImmutableBitSet bitSet, Set<Integer> 
rightPreAdjustedIndexList) {
line too long (123 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2515
PS18, Line 2515:     }
line has trailing whitespace


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2529
PS18, Line 2529:     }
line has trailing whitespace


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2533
PS18, Line 2533:   private static Map<TableScan, 
List<RuntimeFilterReductionContext>> createRuntimeFilterReductionContext(
line too long (105 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2554
PS18, Line 2554:     int rightIndex = adjust ? getAdjustedIndex(multiJoinRel, 
rightBit) : rightBit - leftSide.getRowType().getFieldList().size();
line too long (128 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2555
PS18, Line 2555: //    Set<Integer> rightPreAdjustedIndexList = 
getRightPreAdjustedIndexList(bitSet, adjust, rightTree, multiJoinRel);
line too long (117 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2556
PS18, Line 2556: //    Set<Integer> leftPreAdjustedIndexList = 
getLeftPreAdjustedIndexList(bitSet, rightPreAdjustedIndexList);
line too long (109 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2557
PS18, Line 2557:     ImpalaRelColumnOrigin leftOrigin = (ImpalaRelColumnOrigin) 
mq.getColumnOrigin(leftSide, leftIndex);
line too long (103 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2558
PS18, Line 2558:     ImpalaRelColumnOrigin rightOrigin = 
(ImpalaRelColumnOrigin) mq.getColumnOrigin(rightSide, rightIndex);
line too long (106 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2563
PS18, Line 2563:       rightReduction = mq.getDistinctRowCount(leftSide, 
leftBitSet, null) / leftTableColumn.getStats().getNumDistinctValues();
line too long (126 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2571
PS18, Line 2571:       Column rightTableColumn = 
rightTable.getColumn(rightOrigin.getOriginColumnOrdinal());
line too long (91 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2573
PS18, Line 2573:       leftReduction = mq.getDistinctRowCount(rightSide, 
rightBitSet, null) / rightTableColumn.getStats().getNumDistinctValues();
line too long (128 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2580
PS18, Line 2580:            
reductionMap.computeIfAbsent(rightOrigin.getTableScan(), k -> new 
ArrayList<>());
line too long (92 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2581
PS18, Line 2581:       contextList.add(new 
RuntimeFilterReductionContext(joinRelNodes, rightOrigin.getTableScan(), 
rightReduction, false, false));
line too long (129 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2585
PS18, Line 2585:            
reductionMap.computeIfAbsent(leftOrigin.getTableScan(), k -> new ArrayList<>());
line too long (91 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2586
PS18, Line 2586:       contextList.add(new 
RuntimeFilterReductionContext(joinRelNodes, leftOrigin.getTableScan(), 
leftReduction, true, false));
line too long (126 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2592
PS18, Line 2592:     RuntimeFilterInfo runtimeFilterInfo = 
rel.getCluster().getPlanner().getContext().unwrap(RuntimeFilterInfo.class);
line too long (117 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2593
PS18, Line 2593:     runtimeFilterInfo.inputRefs_ = getInputRefsForContext(rel, 
runtimeFilterInfo.inputRefs_, 0);
line too long (96 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2603
PS18, Line 2603:     RuntimeFilterInfo runtimeFilterInfo = 
rel.getCluster().getPlanner().getContext().unwrap(RuntimeFilterInfo.class);
line too long (117 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2609
PS18, Line 2609:       runtimeFilterInfo.inputRefs_ = 
getInputRefsForContext(rel, runtimeFilterInfo.inputRefs_, i);
line too long (98 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2623
PS18, Line 2623:   private static ImmutableBitSet 
getInputRefsForContext(RelNode rel, ImmutableBitSet currentSet, int i) {
line too long (105 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2628
PS18, Line 2628:         return 
ImmutableBitSet.range(rel.getInputs().get(0).getRowType().getFieldList().size());
line too long (96 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2640
PS18, Line 2640:         return 
currentSet.union(RelOptUtil.InputFinder.bits(((Filter) rel).getCondition()));
line too long (92 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2642
PS18, Line 2642:         throw new RuntimeException("Unknown RelNodeType: " + 
ImpalaPlanRel.getRelNodeType(rel));
line too long (96 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2657
PS18, Line 2657:
line has trailing whitespace


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaLoptOptimizeJoinRule.java@2669
PS18, Line 2669:     public final Map<TableScan, 
List<RuntimeFilterReductionContext>> reductionMap_ = new HashMap<>();
line too long (101 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaSortRemoveConstantKeysRule.java
File 
java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaSortRemoveConstantKeysRule.java:

http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/rules/ImpalaSortRemoveConstantKeysRule.java@92
PS18, Line 92:       return false;
line has trailing whitespace


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/schema/ImpalaRelColumnOrigin.java
File 
java/calcite-planner/src/main/java/org/apache/impala/calcite/schema/ImpalaRelColumnOrigin.java:

http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/schema/ImpalaRelColumnOrigin.java@27
PS18, Line 27:   private final TableScan tableScan_;
line has trailing whitespace


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/schema/ImpalaRelMdColumnOrigins.java
File 
java/calcite-planner/src/main/java/org/apache/impala/calcite/schema/ImpalaRelMdColumnOrigins.java:

http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/schema/ImpalaRelMdColumnOrigins.java@69
PS18, Line 69:   protected static final Logger LOG = 
LoggerFactory.getLogger(ImpalaRelMdColumnOrigins.class.getName());
line too long (104 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/schema/ImpalaRelMdColumnOrigins.java@88
PS18, Line 88:       return mq.getColumnOrigins(rel.getInput(), 
rel.getGroupSet().asList().get(iOutputColumn));
line too long (96 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/schema/ImpalaRelMdColumnOrigins.java@206
PS18, Line 206:   public @Nullable Set<RelColumnOrigin> 
getColumnOrigins(TableModify rel, RelMetadataQuery mq,
line too long (94 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/schema/ImpalaRelMdColumnOrigins.java@314
PS18, Line 314:   private static @Nullable Set<RelColumnOrigin> 
getMultipleColumns(RexNode rexNode, RelNode input,
line too long (98 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/schema/ImpalaRelMdNonCumulativeCost.java
File 
java/calcite-planner/src/main/java/org/apache/impala/calcite/schema/ImpalaRelMdNonCumulativeCost.java:

http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/schema/ImpalaRelMdNonCumulativeCost.java@34
PS18, Line 34: import 
org.apache.impala.calcite.rules.ImpalaLoptOptimizeJoinRule.RuntimeFilterReductionContext;
line too long (96 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/schema/ImpalaRelMdNonCumulativeCost.java@84
PS18, Line 84:
line has trailing whitespace


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/schema/ImpalaRelMdNonCumulativeCost.java@115
PS18, Line 115:     RuntimeFilterInfo runtimeFilterInfo = 
scan.getCluster().getPlanner().getContext().unwrap(RuntimeFilterInfo.class);
line too long (118 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/schema/ImpalaRelMdNonCumulativeCost.java@119
PS18, Line 119:         reductionPercentage = 
RuntimeFilterReductionContext.getTotalReductionPercentage(runtimeFilterInfo.useLeft_,
 runtimeFilterInfo.reductionMap_.get(scan));
line too long (159 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/service/CalciteRelNodeConverter.java
File 
java/calcite-planner/src/main/java/org/apache/impala/calcite/service/CalciteRelNodeConverter.java:

http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/service/CalciteRelNodeConverter.java@93
PS18, Line 93:     this.planner_ = new VolcanoPlanner(new 
ImpalaLoptOptimizeJoinRule.RuntimeFilterInfo());
line too long (91 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/main/java/org/apache/impala/calcite/service/CalciteRelNodeConverter.java@107
PS18, Line 107:     this.planner_ = new VolcanoPlanner(new 
ImpalaLoptOptimizeJoinRule.RuntimeFilterInfo());
line too long (91 > 90)


http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/test/java/org/apache/impala/planner/TestReduceExprShuttle.java
File 
java/calcite-planner/src/test/java/org/apache/impala/planner/TestReduceExprShuttle.java:

http://gerrit.cloudera.org:8080/#/c/23666/18/java/calcite-planner/src/test/java/org/apache/impala/planner/TestReduceExprShuttle.java@69
PS18, Line 69:   protected static final Logger LOG = 
LoggerFactory.getLogger(TestReduceExprShuttle.class.getName());
line too long (101 > 90)



--
To view, visit http://gerrit.cloudera.org:8080/23666
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4af2efcf8d8a6038ad67aa7ef5da57d8d0f8a2bc
Gerrit-Change-Number: 23666
Gerrit-PatchSet: 18
Gerrit-Owner: Steve Carlin <[email protected]>
Gerrit-Reviewer: Impala Public Jenkins <[email protected]>
Gerrit-Comment-Date: Thu, 25 Dec 2025 14:18:31 +0000
Gerrit-HasComments: Yes

Reply via email to