This is an automated email from the ASF dual-hosted git repository. jackietien pushed a commit to branch ty/TableModelGrammar in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit a02b95265c21c919b9b9128a05f891eb48d59f64 Merge: 7ffa882b6fc 4e3e0fdb240 Author: JackieTien97 <[email protected]> AuthorDate: Thu Apr 18 10:01:27 2024 +0800 Merge branch 'ty/TableModelGrammar' of https://github.com/apache/iotdb into ty/TableModelGrammar .../planner/distribution/DistributionPlanner.java | 3 + .../SimpleFragmentParallelPlanner.java | 4 +- .../plan/relational/analyzer/Analysis.java | 9 + .../plan/relational/planner/LogicalPlanner.java | 11 +- .../plan/relational/planner/PlanBuilder.java | 41 +- .../plan/relational/planner/PredicateUtils.java | 415 +++++++++++++++++++++ .../plan/relational/planner/QueryPlanner.java | 22 +- .../plan/relational/planner/RelationPlanner.java | 22 +- .../relational/planner/RelationalModelPlanner.java | 4 +- .../ExchangeNodeGenerator.java} | 20 +- .../distribute/FragmentInstanceGenerator.java} | 179 +++------ .../distribute/RelationalDistributionPlanner.java | 31 +- .../planner/distribute/SimplePlanRewriter.java | 44 +++ .../planner/distribute/SubPlanGenerator.java | 77 ++++ .../relational/planner/node/TableScanNode.java | 18 +- .../planner/optimizations/IndexScan.java | 93 ++++- ...Expressions.java => PruneTableScanColumns.java} | 53 ++- .../optimizations/RelationalPlanOptimizer.java | 9 +- .../RemoveRedundantIdentityProjections.java | 12 +- .../planner/optimizations/SimplifyExpressions.java | 9 +- .../plan/relational/analyzer/AnalyzerTest.java | 19 +- .../relational/planner/PredicateUtilsTest.java | 52 +++ .../db/relational/sql/tree/LogicalExpression.java | 6 +- 23 files changed, 972 insertions(+), 181 deletions(-) diff --cc iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/AnalyzerTest.java index 583f1ec64ca,8e562f742e6..2ca8cbe947c --- a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/AnalyzerTest.java +++ b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/AnalyzerTest.java @@@ -148,16 -146,20 +147,22 @@@ public class AnalyzerTest WarningCollector warningCollector = WarningCollector.NOOP; LogicalPlanner logicalPlanner = new LogicalPlanner(context, metadata, sessionInfo, warningCollector); - LogicalQueryPlan result = logicalPlanner.plan(actualAnalysis); - System.out.println(result); + LogicalQueryPlan logicalQueryPlan = logicalPlanner.plan(actualAnalysis); + System.out.println(logicalQueryPlan); + + RelationalDistributionPlanner distributionPlanner = + new RelationalDistributionPlanner(actualAnalysis, logicalQueryPlan, context); + // DistributedQueryPlan distributedQueryPlan = distributionPlanner.plan(); + // System.out.println(distributedQueryPlan); } - private Analysis analyzeSQL(String sql, Metadata metadata) { + public static Analysis analyzeSQL(String sql, Metadata metadata) { try { + SqlParser sqlParser = new SqlParser(); Statement statement = sqlParser.createStatement(sql); - SessionInfo session = new SessionInfo(0, "test", ZoneId.systemDefault(), "testdb"); + SessionInfo session = + new SessionInfo( + 0, "test", ZoneId.systemDefault(), "testdb", IClientSession.SqlDialect.TABLE); StatementAnalyzerFactory statementAnalyzerFactory = new StatementAnalyzerFactory(metadata, sqlParser, nopAccessControl);
