This is an automated email from the ASF dual-hosted git repository.

jiangtian pushed a change to branch TableModelIngestion
in repository https://gitbox.apache.org/repos/asf/iotdb.git


    from 7337f641a37 add license
     add 3145d189530 Introduce IterativeOptimizer and adapt 
ProjectOffPushDownRules, InlineProjectionsRules
     add 990d6a3a57e Merge branch 'ty/TableModelGrammar' into 
TableModelIngestion

No new revisions were added by this update.

Summary of changes:
 .../java/org/apache/iotdb/rpc/TSStatusCode.java    |   2 +-
 .../plan/planner/plan/node/PlanNode.java           |   4 +
 .../plan/planner/plan/node/PlanVisitor.java        |   5 +
 .../querystats/PlanOptimizersStatsCollector.java   |  75 ++
 .../querystats/QueryPlanOptimizerStatistics.java   |  57 ++
 .../querystats/QueryPlanOptimizerStats.java        |  84 ++
 .../plan/relational/planner/Assignments.java       |  20 +
 .../relational/planner/ExpressionExtractor.java    | 117 +++
 .../planner/ExpressionSymbolInliner.java           |  65 ++
 .../plan/relational/planner/LogicalPlanner.java    |  85 +-
 .../plan/relational/planner/PlanBuilder.java       |   4 +-
 .../plan/relational/planner/PlanNodeSearcher.java  | 226 +++++
 .../plan/relational/planner/QueryPlanner.java      |   3 +-
 .../plan/relational/planner/SymbolsExtractor.java  | 200 +++++
 .../plan/relational/planner/ir/IrUtils.java        |   5 +
 .../GroupReference.java}                           |  72 +-
 .../planner/iterative/IterativeOptimizer.java      | 365 ++++++++
 .../plan/relational/planner/iterative/Lookup.java  |  65 ++
 .../plan/relational/planner/iterative/Memo.java    | 225 +++++
 .../plan/relational/planner/iterative/Plans.java   |  54 ++
 .../plan/relational/planner/iterative/Rule.java    |  87 ++
 .../relational/planner/iterative/RuleIndex.java    |  76 ++
 .../relational/planner/iterative/RuleStats.java    |  53 ++
 .../planner/iterative/RuleStatsRecorder.java       |  45 +
 .../planner/iterative/rule/InlineProjections.java  | 220 +++++
 .../iterative/rule/ProjectOffPushDownRule.java     |  67 ++
 .../planner/iterative/rule/PruneFilterColumns.java |  46 +
 .../planner/iterative/rule/PruneLimitColumns.java  |  36 +
 .../planner/iterative/rule/PruneOffsetColumns.java |  36 +
 .../iterative/rule/PruneOutputSourceColumns.java   |  43 +
 .../iterative/rule/PruneProjectColumns.java        |  39 +
 .../planner/iterative/rule/PruneSortColumns.java   |  44 +
 .../iterative/rule/PruneTableScanColumns.java      | 102 +++
 .../rule/RemoveRedundantIdentityProjections.java   |  48 +
 .../relational/planner/iterative/rule/Util.java    | 137 +++
 .../relational/planner/node/ChildReplacer.java     |  32 +
 .../plan/relational/planner/node/CollectNode.java  |  12 +
 .../plan/relational/planner/node/FilterNode.java   |   6 +
 .../plan/relational/planner/node/LimitNode.java    |  11 +
 .../relational/planner/node/MergeSortNode.java     |  18 +
 .../plan/relational/planner/node/OffsetNode.java   |   6 +
 .../plan/relational/planner/node/OutputNode.java   |   6 +
 .../plan/relational/planner/node/Patterns.java     | 429 +++++++++
 .../plan/relational/planner/node/ProjectNode.java  |  10 +
 .../plan/relational/planner/node/SortNode.java     |   6 +
 .../relational/planner/node/TableScanNode.java     |  12 +
 .../plan/relational/planner/node/TopKNode.java     |  22 +
 .../optimizations/AdaptivePlanOptimizer.java       |  56 ++
 .../planner/optimizations/PlanOptimizer.java       |  77 ++
 .../planner/optimizations/PruneUnUsedColumns.java  | 145 ---
 .../RemoveRedundantIdentityProjections.java        | 102 ---
 .../plan/relational/utils/MoreLists.java           |  53 ++
 .../plan/relational/utils/matching/Capture.java    |  43 +
 .../plan/relational/utils/matching/Captures.java   |  86 ++
 .../relational/utils/matching/DefaultPrinter.java  |  77 ++
 .../plan/relational/utils/matching/Match.java      |  66 ++
 .../plan/relational/utils/matching/Pattern.java    | 120 +++
 .../relational/utils/matching/PatternVisitor.java  |  46 +
 .../plan/relational/utils/matching/Property.java   |  89 ++
 .../relational/utils/matching/PropertyPattern.java |  51 ++
 .../utils/matching/pattern/CapturePattern.java     |  53 ++
 .../utils/matching/pattern/EqualsPattern.java      |  53 ++
 .../utils/matching/pattern/FilterPattern.java      |  55 ++
 .../utils/matching/pattern/TypeOfPattern.java      |  59 ++
 .../utils/matching/pattern/WithPattern.java        |  65 ++
 .../plan/relational/analyzer/AnalyzerTest.java     |  82 +-
 .../analyzer/LimitOffsetPushDownTest.java          |  40 +-
 .../plan/relational/analyzer/SortTest.java         | 999 +++++++--------------
 68 files changed, 4756 insertions(+), 1043 deletions(-)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/execution/querystats/PlanOptimizersStatsCollector.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/execution/querystats/QueryPlanOptimizerStatistics.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/execution/querystats/QueryPlanOptimizerStats.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/ExpressionExtractor.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/ExpressionSymbolInliner.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/PlanNodeSearcher.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/SymbolsExtractor.java
 copy 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/{node/OffsetNode.java
 => iterative/GroupReference.java} (51%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/IterativeOptimizer.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/Lookup.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/Memo.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/Plans.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/Rule.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/RuleIndex.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/RuleStats.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/RuleStatsRecorder.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/InlineProjections.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/ProjectOffPushDownRule.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/PruneFilterColumns.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/PruneLimitColumns.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/PruneOffsetColumns.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/PruneOutputSourceColumns.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/PruneProjectColumns.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/PruneSortColumns.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/PruneTableScanColumns.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/RemoveRedundantIdentityProjections.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/Util.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/ChildReplacer.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/Patterns.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/AdaptivePlanOptimizer.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/PlanOptimizer.java
 delete mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/PruneUnUsedColumns.java
 delete mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/RemoveRedundantIdentityProjections.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/utils/MoreLists.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/utils/matching/Capture.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/utils/matching/Captures.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/utils/matching/DefaultPrinter.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/utils/matching/Match.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/utils/matching/Pattern.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/utils/matching/PatternVisitor.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/utils/matching/Property.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/utils/matching/PropertyPattern.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/utils/matching/pattern/CapturePattern.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/utils/matching/pattern/EqualsPattern.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/utils/matching/pattern/FilterPattern.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/utils/matching/pattern/TypeOfPattern.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/utils/matching/pattern/WithPattern.java

Reply via email to