Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/20664 )
Change subject: IMPALA-?????: First commit for experimental Calcite planner ...................................................................... Patch Set 1: (44 comments) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/node/OptimizedHdfsScanRel.java File java/experimental-planner/src/main/java/org/apache/impala/calcite/node/OptimizedHdfsScanRel.java: http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/node/OptimizedHdfsScanRel.java@58 PS1, Line 58: protected static final Logger LOG = LoggerFactory.getLogger(OptimizedHdfsScanRel.class.getName()); line too long (100 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/node/OptimizedHdfsScanRel.java@127 PS1, Line 127: SlotRef slotref = new SlotRef(Path.createRawPath(baseTblRef.getUniqueAlias(), fieldName)); line too long (96 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/node/OptimizedHdfsScanRel.java@132 PS1, Line 132: + "is a complex type (array/map/struct) column. This is not currently supported.")); line too long (96 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/node/OptimizedProjectRelBase.java File java/experimental-planner/src/main/java/org/apache/impala/calcite/node/OptimizedProjectRelBase.java: http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/node/OptimizedProjectRelBase.java@47 PS1, Line 47: protected static final Logger LOG = LoggerFactory.getLogger(OptimizedProjectRelBase.class); line too long (93 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/node/OptimizedProjectRelBase.java@52 PS1, Line 52: super(project.getCluster(), project.getTraitSet(), project.getInputs(), project.getRowType()); line too long (98 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/schema/CalciteTable.java File java/experimental-planner/src/main/java/org/apache/impala/calcite/schema/CalciteTable.java: http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/schema/CalciteTable.java@34 PS1, Line 34: protected static final Logger LOG = LoggerFactory.getLogger(CalciteTable.class.getName()); line too long (92 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/CalciteJniFrontend.java File java/experimental-planner/src/main/java/org/apache/impala/calcite/service/CalciteJniFrontend.java: http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/CalciteJniFrontend.java@47 PS1, Line 47: * to walk through all the steps of compiling the query (e.g. parsing, validating, etc... ) line too long (91 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/CalciteJniFrontend.java@52 PS1, Line 52: protected static final Logger LOG = LoggerFactory.getLogger(CalciteJniFrontend.class.getName()); line too long (98 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/CalciteJniFrontend.java@124 PS1, Line 124: // Overly simple check. This needs to be adjusted since not all queries begin with 'select', line too long (97 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/CalciteJniFrontend.java@129 PS1, Line 129: public byte[] runThroughOriginalPlanner(byte[] thriftQueryContext) throws ImpalaException { line too long (93 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/CalciteMetadataHandler.java File java/experimental-planner/src/main/java/org/apache/impala/calcite/service/CalciteMetadataHandler.java: http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/CalciteMetadataHandler.java@82 PS1, Line 82: private CalciteSchema createCalciteSchema(FeCatalog catalog, Set<TableName> tableNames) { line too long (91 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/CalcitePhysPlanCreator.java File java/experimental-planner/src/main/java/org/apache/impala/calcite/service/CalcitePhysPlanCreator.java: http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/CalcitePhysPlanCreator.java@40 PS1, Line 40: * CalcitePhysPlanCreator. This class is responsible for turning an ImpalaPlanRel Calcite plan line too long (94 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/CalciteRelNodeConverter.java File java/experimental-planner/src/main/java/org/apache/impala/calcite/service/CalciteRelNodeConverter.java: http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/CalciteRelNodeConverter.java@46 PS1, Line 46: private static final RelOptTable.ViewExpander NOOP_EXPANDER = (type, query, schema, path) -> null; line too long (100 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/CalciteValidator.java File java/experimental-planner/src/main/java/org/apache/impala/calcite/service/CalciteValidator.java: http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/CalciteValidator.java@44 PS1, Line 44: protected static final Logger LOG = LoggerFactory.getLogger(CalciteValidator.class.getName()); line too long (96 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/ExecRequestCreator.java File java/experimental-planner/src/main/java/org/apache/impala/calcite/service/ExecRequestCreator.java: http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/ExecRequestCreator.java@75 PS1, Line 75: protected static final Logger LOG = LoggerFactory.getLogger(ExecRequestCreator.class.getName()); line too long (98 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/ExecRequestCreator.java@97 PS1, Line 97: public TExecRequest createExecRequest(PlanNode planNodeRoot, TQueryCtx queryCtx, PlannerContext plannerContext, line too long (113 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/ExecRequestCreator.java@98 PS1, Line 98: Analyzer analyzer, List<Expr> outputExprs, Collection<FeTable> tables) throws ImpalaException { line too long (101 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/ExecRequestCreator.java@127 PS1, Line 127: // to mimic the original planner behavior, use EXTENDED mode explain except for EXPLAIN statements line too long (102 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/ExecRequestCreator.java@129 PS1, Line 129: // TExplainLevel explainLevel = isExplain ? plannerContext.getQueryOptions().getExplain_level() : line too long (101 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/ExecRequestCreator.java@135 PS1, Line 135: queryExecRequest.setQuery_plan(getExplainString(allFragments, explainLevel, plannerContext)); line too long (97 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/ExecRequestCreator.java@139 PS1, Line 139: queryCtx.setDesc_tbl_serialized(plannerContext.getRootAnalyzer().getDescTbl().toSerializedThrift()); line too long (104 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/ExecRequestCreator.java@147 PS1, Line 147: List<PlanFragment> createPlans(PlanNode planNodeRoot, Analyzer analyzer, PlannerContext ctx, line too long (94 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/ExecRequestCreator.java@166 PS1, Line 166: List<PlanFragment> fragments = createPlanFragments(planNodeRoot, ctx, analyzer, outputExprs); line too long (99 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/ExecRequestCreator.java@171 PS1, Line 171: // The rootFragmentList contains the 'root' fragments of each of the parallel plans line too long (91 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/ExecRequestCreator.java@181 PS1, Line 181: * Create one or more plan fragments corresponding to the supplied single node physical plan. line too long (95 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/ExecRequestCreator.java@188 PS1, Line 188: * @return list of plan fragments in the order [root fragment, child of root ... leaf fragment] line too long (97 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/ExecRequestCreator.java@191 PS1, Line 191: private List<PlanFragment> createPlanFragments(PlanNode planNodeRoot, PlannerContext ctx, Analyzer analyzer, line too long (110 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/ExecRequestCreator.java@203 PS1, Line 203: // Create distributed plan. For insert/CTAS without limit, isPartitioned should be true. line too long (94 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/ExecRequestCreator.java@205 PS1, Line 205: // final boolean isPartitioned = stmtType_ == TStmtType.DML && !planNodeRoot.hasLimit(); line too long (94 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/ExecRequestCreator.java@234 PS1, Line 234: private TExecRequest createExecRequest(TQueryCtx queryCtx, PlanFragment planFragmentRoot, line too long (91 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/service/ExecRequestCreator.java@264 PS1, Line 264: private String getExplainString(List<PlanFragment> fragments, TExplainLevel explainLevel, PlannerContext ctx) { line too long (113 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/type/ImpalaTypeConverter.java File java/experimental-planner/src/main/java/org/apache/impala/calcite/type/ImpalaTypeConverter.java: http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/type/ImpalaTypeConverter.java@50 PS1, Line 50: * the function signatures, all precisions are allowed, so this type is used when describing line too long (92 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/type/ImpalaTypeConverter.java@52 PS1, Line 52: * - types with precisions. These also use Types (also of type ScalarType), but the precision line too long (94 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/type/ImpalaTypeConverter.java@54 PS1, Line 54: * line has trailing whitespace http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/type/ImpalaTypeConverter.java@56 PS1, Line 56: * - Normalized RelDataTypes. While theoretically we should have been able to use SqlTypeName to line too long (97 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/type/ImpalaTypeConverter.java@57 PS1, Line 57: * have the same purpose as the Impala default dataypes, there is no SqlTypeName.STRING. Therefore, line too long (99 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/type/ImpalaTypeConverter.java@70 PS1, Line 70: RexBuilder rexBuilder = new RexBuilder(new JavaTypeFactoryImpl(new ImpalaTypeSystemImpl())); line too long (96 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/type/ImpalaTypeConverter.java@87 PS1, Line 87: factory.createSqlType(SqlTypeName.VARCHAR, 1), charSetName, SqlCollation.IMPLICIT); line too long (91 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/type/ImpalaTypeConverter.java@118 PS1, Line 118: // for all other arguments besides decimal, we just normalize the datatype and return the line too long (93 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/type/ImpalaTypeConverter.java@121 PS1, Line 121: Map<Type, RelDataType> mapToUse = (nullable) ? nullableImpalaToCalciteMap : impalaToCalciteMap; line too long (99 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/type/ImpalaTypeConverter.java@174 PS1, Line 174: factory.createSqlType(SqlTypeName.CHAR, charLength), charSetName, SqlCollation.IMPLICIT); line too long (97 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/type/ImpalaTypeSystemImpl.java File java/experimental-planner/src/main/java/org/apache/impala/calcite/type/ImpalaTypeSystemImpl.java: http://gerrit.cloudera.org:8080/#/c/20664/1/java/experimental-planner/src/main/java/org/apache/impala/calcite/type/ImpalaTypeSystemImpl.java@41 PS1, Line 41: private static final int MAX_TIMESTAMP_WITH_LOCAL_TIME_ZONE_PRECISION = 15; // Up to nanos line too long (92 > 90) http://gerrit.cloudera.org:8080/#/c/20664/1/tests/custom_cluster/test_experimental_planner.py File tests/custom_cluster/test_experimental_planner.py: http://gerrit.cloudera.org:8080/#/c/20664/1/tests/custom_cluster/test_experimental_planner.py@42 PS1, Line 42: " flake8: E501 line too long (92 > 90 characters) http://gerrit.cloudera.org:8080/#/c/20664/1/tests/custom_cluster/test_experimental_planner.py@44 PS1, Line 44: s flake8: F841 local variable 'setup_client' is assigned to but never used -- To view, visit http://gerrit.cloudera.org:8080/20664 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I850679424d002c8acccb7421792ad9c498f3c8ab Gerrit-Change-Number: 20664 Gerrit-PatchSet: 1 Gerrit-Owner: Steve Carlin <[email protected]> Gerrit-Reviewer: Impala Public Jenkins <[email protected]> Gerrit-Comment-Date: Mon, 06 Nov 2023 16:38:05 +0000 Gerrit-HasComments: Yes
