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

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


    from 612d3da654f fix imports
     add 804915ee8f7 init
     add 725503f12ee add relational-grammar
     add fee52239092 Merge remote-tracking branch 'origin/master' into 
ty/TableModelGrammar
     add ded234f3cdd add parser submodule
     add e2d722ada97 add dependency
     add cdc1fdd320f partial expression
     add b1278912731 partial
     add ed6549a2fc9 add all statement node
     add bb518ad0e35 partial
     add 0a7255d1072 partial parser
     add 39763fe3e4b remove unused dependency
     add ed5d5dd3636 save
     add 29153818e07 partial
     add 875f5037eda fix compile
     add 2c12cdf6c8f StatementAnalyzer
     add 4676d100dbf finish analyze
     add cd254c2fdd3 Merge remote-tracking branch 'origin/master' into 
ty/TableModelGrammar
     add 5bbcd7b1ee4 first UT
     add c00011d0285 Add format
     add b5b8c42268b fix conflicts
     add 0e8cf5a8101 Merge remote-tracking branch 'origin/master' into 
ty/TableModelGrammar
     add 06a82db678e merge master
     add b73cbb2e42c Merge remote-tracking branch 'origin/master' into 
ty/TableModelGrammar
     add f6d05caf371 Merge remote-tracking branch 'origin/master' into 
ty/TableModelGrammar
     add a0b3b07d18e Merge remote-tracking branch 'origin/master' into 
ty/TableModelGrammar
     add e400a45fd90 merge master
     add 39912f3ce80 Merge remote-tracking branch 'origin/master' into 
ty/TableModelGrammar
     add d0584cd8e69 support sql_dialect in cli and session
     add 2432416a443 add temp logical planner
     add 73efd98bca5 add logical planner node impl
     add a746a36a450 add more relational impl
     add 25a643c7d55 Merge branch 'ty/TableModelGrammar' of 
github.com:apache/iotdb into ty/TableModelGrammar
     add eeaadb49d8a perfect RelationalModelPlanner
     add bfa1336e75d Merge branch 'ty/TableModelGrammar' of 
github.com:apache/iotdb into ty/TableModelGrammar
     add c3c833392b3 resolve conflicts
     add a37a10e150d change wrong using Session to SessionInfo
     add fca8c61b4b0 Add support for builtin scalar and aggregation function
     add ae8e5fa6bbf add returnType impl
     add a4f22dfdd5d fix relational plan test
     add c149aad8acb [Table-Model] Implement db management
     add 821f72ee78f resolve conflicts
     add 8b24378c7fb add SimplifyExpressions and NormalizeOrExpressionRewriter
     add 9aac8228947 add ExtractCommonPredicatesExpressionRewriter
     add 4e6364f03ef merge master
     add 6408bd86367 [Table Model] Support basic table management
     add 095f86adc68 add interface
     add 5b8831c26f8 change TableScanNode
     add 34bf1aa11bb add optimizer RemoveRedundantIdentityProjections
     add 3a8183fe219 Merge branch 'ty/TableModelGrammar' of 
github.com:apache/iotdb into ty/TableModelGrammar
     add c818ecda1af add optimizer
     add 09e1be46ebf merge master
     add 5a90254881e perfect process
     add 6022497c987 Merge branch 'ty/TableModelGrammar' of 
https://github.com/apache/iotdb into ty/TableModelGrammar
     add fc5401fca30 change TableScanNode
     add 54e16751d14 perfect TableScanNode
     add 445056239cf add more attribute for TableScanNode, such as scanOrder, 
pushDownPredicate, pushDownLimit, pushDownOffset, etc
     add 7d49f61b5b8 Add TableOperatorGenerator
     add 9e7a196e8ee Merge branch 'ty/TableModelGrammar' of 
https://github.com/apache/iotdb into ty/TableModelGrammar
     add 5c95c5843a3 Merge branch 'ty/TableModelGrammar' of 
github.com:apache/iotdb into ty/TableModelGrammar
     add 9e80bc0b006 fix SymbolReference, FieldReference;  add 
extractGlobalTimeFilter
     add 6fb4d2538e0 implement TableScanOperator
     add 759ba5bdb06 resolve conflicts
     add 81815dd3f8e Merge branch 'ty/TableModelGrammar' of 
github.com:apache/iotdb into ty/TableModelGrammar
     add 557084b28c6 wal
     add 240bd93b8a9 TsFileResource
     add e9a68fc8fd2 fix query issue
     add 821291e07b4 fix format and query issue
     new 1ae10b394db Merge branch 'h/TableModelWrite' into removeTsFIleModule_v4

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../java/org/apache/iotdb/cli/AbstractCli.java     |   16 +
 .../src/main/java/org/apache/iotdb/cli/Cli.java    |    4 +
 .../org/apache/iotdb/isession/SessionConfig.java   |    2 +
 .../main/java/org/apache/iotdb/jdbc/Config.java    |    2 +
 .../org/apache/iotdb/jdbc/IoTDBConnection.java     |    3 +-
 .../apache/iotdb/jdbc/IoTDBConnectionParams.java   |   10 +
 .../src/main/java/org/apache/iotdb/jdbc/Utils.java |    5 +
 .../java/org/apache/iotdb/rpc/TSStatusCode.java    |    8 +
 .../java/org/apache/iotdb/session/Session.java     |   14 +-
 .../apache/iotdb/session/SessionConnection.java    |   12 +-
 .../org/apache/iotdb/session/pool/SessionPool.java |   12 +
 .../session/subscription/SubscriptionSession.java  |    2 +-
 .../SubscriptionSessionConnection.java             |    5 +-
 .../iotdb/session/SessionConnectionTest.java       |    6 +-
 .../apache/iotdb/spark/tsfile/DefaultSource.scala  |    2 +-
 .../iotdb/spark/tsfile/NarrowConverter.scala       |    2 +-
 .../apache/iotdb/spark/tsfile/WideConverter.scala  |    4 +-
 .../confignode/client/DataNodeRequestType.java     |    3 +
 .../client/async/AsyncDataNodeClientPool.java      |    7 +
 .../client/async/handlers/AsyncClientHandler.java  |    1 +
 .../client/sync/SyncDataNodeClientPool.java        |    3 +
 .../consensus/request/ConfigPhysicalPlan.java      |   12 +
 .../consensus/request/ConfigPhysicalPlanType.java  |    5 +
 .../request/write/table/CommitCreateTablePlan.java |   67 +
 .../request/write/table/PreCreateTablePlan.java    |   68 +
 .../write/table/RollbackCreateTablePlan.java       |   67 +
 .../iotdb/confignode/manager/ConfigManager.java    |   13 +
 .../iotdb/confignode/manager/ProcedureManager.java |   45 +
 .../load/subscriber/NodeStatisticsChangeEvent.java |   31 +
 .../iotdb/confignode/manager/node/NodeManager.java |    2 +
 .../manager/schema/ClusterSchemaManager.java       |   10 +
 .../persistence/executor/ConfigPlanExecutor.java   |    9 +
 .../persistence/schema/ClusterSchemaInfo.java      |   75 +
 .../confignode/persistence/schema/ConfigMTree.java |  109 +
 .../schema/mnode/impl/ConfigTableNode.java         |  221 ++
 .../schema/mnode/impl/TableNodeStatus.java         |   58 +
 .../schema/mnode/info/ConfigTableInfo.java}        |   40 +-
 .../impl/schema/DataNodeRegionTaskExecutor.java    |    2 +-
 .../impl/schema/table/CreateTableProcedure.java    |  429 ++++
 .../state/schema/CreateTableState.java}            |   30 +-
 .../procedure/store/ProcedureFactory.java          |    6 +
 .../confignode/procedure/store/ProcedureType.java  |    2 +
 .../thrift/ConfigNodeRPCServiceProcessor.java      |    5 +
 iotdb-core/datanode/pom.xml                        |   18 +
 .../java/org/apache/iotdb/db/conf/IoTDBConfig.java |    8 +-
 .../table/TableAlreadyExistsException.java}        |   26 +-
 .../metadata/table/TableNotExistsException.java}   |   26 +-
 .../iotdb/db/protocol/client/ConfigNodeClient.java |    7 +
 .../iotdb/db/protocol/session/IClientSession.java  |   28 +
 .../iotdb/db/protocol/session/SessionManager.java  |   26 +-
 .../protocol/thrift/impl/ClientRPCServiceImpl.java |  125 +-
 .../impl/DataNodeInternalRPCServiceImpl.java       |   39 +
 .../iotdb/db/queryengine/common/SessionInfo.java   |   30 +-
 .../common/header/ColumnHeaderConstant.java        |   24 +
 .../common/header/DatasetHeaderFactory.java        |   12 +
 .../execution/operator/AggregationUtil.java        |    3 +
 .../AbstractSeriesAggregationScanOperator.java     |    3 +
 .../source/relational/TableScanOperator.java       |  370 +++
 .../warnings/DefaultWarningCollector.java          |   56 +
 .../execution/warnings/IoTDBWarning.java           |   69 +
 .../execution/warnings/StandardWarningCode.java}   |   28 +-
 .../execution/warnings/WarningCode.java            |   68 +
 .../execution/warnings/WarningCodeSupplier.java}   |   24 +-
 .../execution/warnings/WarningCollector.java}      |   33 +-
 .../iotdb/db/queryengine/plan/Coordinator.java     |   74 +
 .../db/queryengine/plan/analyze/Analysis.java      |    2 +-
 .../queryengine/plan/analyze/AnalyzeVisitor.java   |   18 +
 .../db/queryengine/plan/analyze/TypeProvider.java  |   92 +-
 .../plan/analyze/lock/SchemaLockType.java          |   17 +-
 .../execution/config/TableConfigTaskVisitor.java   |  187 ++
 .../config/executor/ClusterConfigTaskExecutor.java |  182 ++
 .../config/executor/IConfigTaskExecutor.java       |   22 +
 .../config/metadata/relational/CreateDBTask.java}  |   28 +-
 .../metadata/relational/CreateTableTask.java       |   48 +
 .../metadata/relational/DescribeTableTask.java     |   85 +
 .../config/metadata/relational/DropDBTask.java}    |   28 +-
 .../config/metadata/relational/ShowDBTask.java     |   82 +
 .../config/metadata/relational/ShowTablesTask.java |   77 +
 .../config/metadata/relational/UseDBTask.java      |   46 +
 .../plan/planner/TableOperatorGenerator.java       |   87 +
 .../plan/planner/plan/node/PlanNode.java           |    6 +
 .../plan/planner/plan/node/PlanVisitor.java        |   46 +
 .../relational/analyzer/AggregationAnalyzer.java   |  465 ++++
 .../plan/relational/analyzer/Analysis.java         |  833 +++++++
 .../plan/relational/analyzer/Analyzer.java         |   79 +
 .../relational/analyzer/CanonicalizationAware.java |  105 +
 .../relational/analyzer/CorrelationSupport.java}   |   25 +-
 .../relational/analyzer/ExpressionAnalysis.java    |   99 +
 .../relational/analyzer/ExpressionAnalyzer.java    | 1518 ++++++++++++
 .../relational/analyzer/ExpressionTreeUtils.java   |   98 +
 .../plan/relational/analyzer/Field.java            |  218 ++
 .../plan/relational/analyzer/FieldId.java          |   80 +
 .../plan/relational/analyzer/NodeRef.java          |   63 +
 .../plan/relational/analyzer/RelationId.java       |   91 +
 .../plan/relational/analyzer/RelationType.java     |  185 ++
 .../plan/relational/analyzer/ResolvedField.java    |   77 +
 .../plan/relational/analyzer/Scope.java            |  401 ++++
 .../analyzer/ScopeReferenceExtractor.java          |   60 +
 .../relational/analyzer/StatementAnalyzer.java     | 2441 ++++++++++++++++++++
 .../analyzer/StatementAnalyzerFactory.java         |   60 +
 .../relational/cost/CachingTableStatsProvider.java |   51 +
 .../plan/relational/cost/ColumnStatistics.java     |  156 ++
 .../plan/relational/cost/DoubleRange.java          |  104 +
 .../queryengine/plan/relational/cost/Estimate.java |   84 +
 .../plan/relational/cost/StatsUtil.java            |   43 +
 .../plan/relational/cost/TableStatistics.java      |  112 +
 .../plan/relational/cost/TableStatsProvider.java   |   20 +
 .../plan/relational/function/BoundSignature.java   |   97 +
 .../plan/relational/function/FunctionId.java       |   68 +
 .../plan/relational/function/FunctionKind.java}    |   27 +-
 .../function/LongVariableConstraint.java           |   64 +
 .../plan/relational/function/OperatorType.java     |   67 +
 .../plan/relational/function/Signature.java        |  213 ++
 .../function/TypeVariableConstraint.java           |  192 ++
 .../metadata/BuiltinFunctionResolver.java}         |   24 +-
 .../plan/relational/metadata/ColumnHandle.java}    |   38 +-
 .../plan/relational/metadata/ColumnMetadata.java   |  213 ++
 .../plan/relational/metadata/ColumnSchema.java     |  136 ++
 .../plan/relational/metadata/DeviceEntry.java}     |   27 +-
 .../plan/relational/metadata/Metadata.java         |   70 +
 .../plan/relational/metadata/MetadataUtil.java     |  139 ++
 .../metadata/OperatorNotFoundException.java        |  119 +
 .../relational/metadata/QualifiedObjectName.java   |  104 +
 .../relational/metadata/QualifiedTablePrefix.java  |   87 +
 .../plan/relational/metadata/ResolvedFunction.java |  107 +
 .../plan/relational/metadata/TableHandle.java}     |   24 +-
 .../plan/relational/metadata/TableMetadata.java    |   93 +
 .../relational/metadata/TableMetadataImpl.java     |  275 +++
 .../plan/relational/metadata/TableSchema.java}     |   26 +-
 .../plan/relational/planner/Assignments.java       |  232 ++
 .../plan/relational/planner/LogicalPlanner.java    |  127 +
 .../plan/relational/planner/OrderingScheme.java    |   89 +
 .../relational/planner/OrderingTranslator.java     |   34 +
 .../plan/relational/planner/PlanBuilder.java       |  127 +
 .../plan/relational/planner/PlannerContext.java}   |   30 +-
 .../plan/relational/planner/PredicateUtils.java    |  416 ++++
 .../plan/relational/planner/QueryPlanner.java      |  323 +++
 .../plan/relational/planner/RelationPlan.java      |   81 +
 .../plan/relational/planner/RelationPlanner.java   |  173 ++
 .../relational/planner/RelationalModelPlanner.java |  157 ++
 .../relational/planner/RelationalPlanVisitor.java  |   78 +
 .../plan/relational/planner/ScopeAware.java        |  194 ++
 .../plan/relational/planner/SortOrder.java         |   44 +
 .../plan/relational/planner/Symbol.java            |   77 +
 .../plan/relational/planner/SymbolAllocator.java   |  124 +
 .../plan/relational/planner/SymbolResolver.java}   |   24 +-
 .../distribute/RelationalDistributionPlanner.java  |   35 +
 .../planner/ir/DefaultTraversalVisitor.java        |  173 ++
 .../planner/ir/DeterminismEvaluator.java           |   27 +
 .../relational/planner/ir/ExpressionRewriter.java  |  142 ++
 .../planner/ir/ExpressionTreeRewriter.java         |  575 +++++
 .../ExtractCommonPredicatesExpressionRewriter.java |  198 ++
 .../plan/relational/planner/ir/IrUtils.java        |  261 +++
 .../plan/relational/planner/ir/IrVisitor.java      |  136 ++
 .../planner/ir/NormalizeOrExpressionRewriter.java  |  136 ++
 .../plan/relational/planner/node/FilterNode.java   |   75 +
 .../plan/relational/planner/node/LimitNode.java    |   49 +
 .../relational/planner/node/MergeSortNode.java     |   58 +
 .../plan/relational/planner/node/OffsetNode.java   |   41 +
 .../plan/relational/planner/node/OutputNode.java   |   49 +
 .../plan/relational/planner/node/ProjectNode.java  |   48 +
 .../plan/relational/planner/node/SortNode.java     |   44 +
 .../relational/planner/node/TableScanNode.java     |  149 ++
 .../plan/relational/planner/node/TopKNode.java     |   59 +
 .../planner/optimizations/IndexScan.java           |   27 +
 .../optimizations/RelationalPlanOptimizer.java     |   23 +
 .../RemoveRedundantIdentityProjections.java        |   88 +
 .../planner/optimizations/SimplifyExpressions.java |   61 +
 .../plan/relational/security/AccessControl.java}   |   24 +-
 .../plan/relational/security/Identity.java}        |   24 +-
 .../plan/relational/type/InternalTypeManager.java  |   90 +
 .../plan/relational/type/NamedTypeSignature.java   |   79 +
 .../plan/relational/type/ParameterKind.java}       |   27 +-
 .../plan/relational/type/RowFieldName.java         |   63 +
 .../plan/relational/type/StandardTypes.java        |   55 +
 .../queryengine/plan/relational/type/TypeId.java   |   66 +
 .../plan/relational/type/TypeManager.java}         |   31 +-
 .../relational/type/TypeNotFoundException.java}    |   27 +-
 .../plan/relational/type/TypeSignature.java        |  207 ++
 .../relational/type/TypeSignatureParameter.java    |  175 ++
 .../relational/type/TypeSignatureTranslator.java   |  107 +
 .../plan/relational/utils/NodeUtils.java}          |   26 +-
 .../binary/CompareBinaryColumnTransformer.java     |    2 +-
 .../ternary/CompareTernaryColumnTransformer.java   |    6 +-
 .../dag/column/unary/InColumnTransformer.java      |    4 +-
 .../dag/column/unary/RegularColumnTransformer.java |    2 +-
 .../scalar/CastFunctionColumnTransformer.java      |   14 +-
 .../db/schemaengine/table/DataNodeTableCache.java  |  207 ++
 .../iotdb/db/schemaengine/table/ITableCache.java}  |   23 +-
 .../java/org/apache/iotdb/db/service/DataNode.java |    4 +
 .../db/storageengine/dataregion/DataRegion.java    |    2 +-
 .../RepairUnsortedFileCompactionPerformer.java     |    4 +-
 .../compaction/repair/RepairDataFileScanUtil.java  |   11 +-
 .../estimator/AbstractCompactionEstimator.java     |   19 +-
 .../selector/utils/TsFileResourceCandidate.java    |    4 +-
 .../dataregion/memtable/AbstractMemTable.java      |    7 +-
 .../dataregion/memtable/DeviceIDFactory.java       |   22 +-
 .../dataregion/read/QueryDataSource.java           |    9 +
 .../dataregion/tsfile/TsFileResource.java          |   16 +-
 ...iceTimeIndex.java => ArrayDeviceTimeIndex.java} |   84 +-
 .../dataregion/tsfile/timeindex/FileTimeIndex.java |   10 +-
 .../dataregion/tsfile/timeindex/ITimeIndex.java    |    6 +-
 .../tsfile/timeindex/PlainDeviceTimeIndex.java     |  183 ++
 .../tsfile/timeindex/TimeIndexLevel.java           |   15 +-
 .../dataregion/utils/TsFileResourceUtils.java      |   10 +-
 .../iotdb/db/tools/TsFileResourcePrinter.java      |    4 +-
 .../plan/relational/analyzer/AnalyzerTest.java     |  177 ++
 .../plan/relational/analyzer/TestMatadata.java     |  299 +++
 .../relational/planner/PredicateUtilsTest.java     |   52 +
 .../dataregion/LastFlushTimeMapTest.java           |    8 +-
 .../TsFileResourceProgressIndexTest.java           |    5 +-
 .../compaction/CompactionValidationTest.java       |   18 +-
 .../InsertionCrossSpaceCompactionRecoverTest.java  |    4 +-
 .../InsertionCrossSpaceCompactionSelectorTest.java |    4 +-
 .../dataregion/tsfile/TsFileResourceTest.java      |   16 +-
 .../rescon/memory/ResourceManagerTest.java         |   22 +-
 .../apache/iotdb/commons/conf/CommonConfig.java    |    4 +-
 .../org/apache/iotdb/commons/path/AlignedPath.java |    4 +
 .../iotdb/commons/schema/SchemaConstant.java       |    6 +
 .../apache/iotdb/commons/schema/table/TsTable.java |  145 ++
 .../schema/table/TsTableInternalRPCType.java       |   64 +
 .../schema/table/TsTableInternalRPCUtil.java       |   98 +
 .../schema/table/column/AttributeColumnSchema.java |   57 +
 .../schema/table/column/IdColumnSchema.java        |   57 +
 .../table/column/MeasurementColumnSchema.java      |  102 +
 .../schema/table/column/TimeColumnSchema.java      |   57 +
 .../schema/table/column/TsTableColumnCategory.java |   73 +
 .../schema/table/column/TsTableColumnSchema.java   |   74 +
 .../table/column/TsTableColumnSchemaUtil.java      |   80 +
 iotdb-core/pom.xml                                 |    2 +
 iotdb-core/relational-grammar/pom.xml              |  106 +
 .../db/relational/grammar/sql/RelationalSql.g4     | 1207 ++++++++++
 .../db/relational/grammar/type/TypeCalculation.g4  |   72 +
 .../grammar/sql/RelationalSqlKeywords.java         |   48 +
 iotdb-core/{ => relational-parser}/pom.xml         |   44 +-
 .../relational/sql/parser/AntlrATNCacheFields.java |   70 +
 .../iotdb/db/relational/sql/parser/AstBuilder.java | 1717 ++++++++++++++
 .../sql/parser/CaseInsensitiveStream.java          |   85 +
 .../db/relational/sql/parser/ErrorHandler.java     |  438 ++++
 .../db/relational/sql/parser/ParsingException.java |   69 +
 .../RefreshableSqlBaseParserInitializer.java       |   52 +
 .../iotdb/db/relational/sql/parser/SqlParser.java  |  254 ++
 .../iotdb/db/relational/sql/tree/AddColumn.java    |   88 +
 .../db/relational/sql/tree/AliasedRelation.java    |  112 +
 .../iotdb/db/relational/sql/tree/AllColumns.java   |  130 ++
 .../iotdb/db/relational/sql/tree/AllRows.java      |   67 +
 .../sql/tree/ArithmeticBinaryExpression.java       |  119 +
 .../sql/tree/ArithmeticUnaryExpression.java        |  114 +
 .../iotdb/db/relational/sql/tree/AstVisitor.java   |  449 ++++
 .../db/relational/sql/tree/BetweenPredicate.java   |  106 +
 .../db/relational/sql/tree/BinaryLiteral.java      |  106 +
 .../db/relational/sql/tree/BooleanLiteral.java     |   87 +
 .../apache/iotdb/db/relational/sql/tree/Cast.java  |  133 ++
 .../db/relational/sql/tree/CoalesceExpression.java |   92 +
 .../db/relational/sql/tree/ColumnDefinition.java   |  125 +
 .../relational/sql/tree/ComparisonExpression.java  |  171 ++
 .../iotdb/db/relational/sql/tree/CreateDB.java     |  114 +
 .../db/relational/sql/tree/CreateFunction.java     |  104 +
 .../iotdb/db/relational/sql/tree/CreateIndex.java  |  110 +
 .../iotdb/db/relational/sql/tree/CreateTable.java  |  132 ++
 .../db/relational/sql/tree/CurrentDatabase.java    |   70 +
 .../iotdb/db/relational/sql/tree/CurrentTime.java  |  113 +
 .../iotdb/db/relational/sql/tree/CurrentUser.java  |   70 +
 .../iotdb/db/relational/sql/tree/DataType.java}    |   23 +-
 .../db/relational/sql/tree/DataTypeParameter.java} |   24 +-
 .../db/relational/sql/tree/DecimalLiteral.java     |   76 +
 .../tree/DefaultExpressionTraversalVisitor.java}   |   29 +-
 .../sql/tree/DefaultTraversalVisitor.java          |  490 ++++
 .../iotdb/db/relational/sql/tree/Delete.java       |   94 +
 .../relational/sql/tree/DereferenceExpression.java |  151 ++
 .../db/relational/sql/tree/DescribeTable.java      |   80 +
 .../db/relational/sql/tree/DoubleLiteral.java      |   80 +
 .../iotdb/db/relational/sql/tree/DropColumn.java   |   86 +
 .../iotdb/db/relational/sql/tree/DropDB.java       |   86 +
 .../iotdb/db/relational/sql/tree/DropFunction.java |   74 +
 .../iotdb/db/relational/sql/tree/DropIndex.java    |   88 +
 .../iotdb/db/relational/sql/tree/DropTable.java    |   86 +
 .../iotdb/db/relational/sql/tree/Except.java       |  107 +
 .../db/relational/sql/tree/ExistsPredicate.java    |   80 +
 .../iotdb/db/relational/sql/tree/Explain.java      |   79 +
 .../db/relational/sql/tree/ExplainAnalyze.java     |   86 +
 .../iotdb/db/relational/sql/tree/Expression.java}  |   28 +-
 .../db/relational/sql/tree/FieldReference.java     |   80 +
 .../iotdb/db/relational/sql/tree/FunctionCall.java |  113 +
 .../db/relational/sql/tree/GenericDataType.java    |   88 +
 .../db/relational/sql/tree/GenericLiteral.java     |  103 +
 .../iotdb/db/relational/sql/tree/GroupBy.java      |  100 +
 .../db/relational/sql/tree/GroupingElement.java}   |   26 +-
 .../iotdb/db/relational/sql/tree/GroupingSets.java |  114 +
 .../iotdb/db/relational/sql/tree/Identifier.java   |  146 ++
 .../iotdb/db/relational/sql/tree/IfExpression.java |  105 +
 .../db/relational/sql/tree/InListExpression.java   |   83 +
 .../iotdb/db/relational/sql/tree/InPredicate.java  |   86 +
 .../iotdb/db/relational/sql/tree/Insert.java       |  107 +
 .../iotdb/db/relational/sql/tree/Intersect.java    |   91 +
 .../db/relational/sql/tree/IsNotNullPredicate.java |   79 +
 .../db/relational/sql/tree/IsNullPredicate.java    |   79 +
 .../apache/iotdb/db/relational/sql/tree/Join.java  |  165 ++
 .../db/relational/sql/tree/JoinCriteria.java}      |   27 +-
 .../iotdb/db/relational/sql/tree/JoinOn.java       |   68 +
 .../iotdb/db/relational/sql/tree/JoinUsing.java    |   70 +
 .../db/relational/sql/tree/LikePredicate.java      |  112 +
 .../apache/iotdb/db/relational/sql/tree/Limit.java |   96 +
 .../iotdb/db/relational/sql/tree/Literal.java}     |   28 +-
 .../db/relational/sql/tree/LogicalExpression.java  |  119 +
 .../iotdb/db/relational/sql/tree/LongLiteral.java  |  109 +
 .../iotdb/db/relational/sql/tree/NaturalJoin.java} |   35 +-
 .../apache/iotdb/db/relational/sql/tree/Node.java  |   71 +
 .../iotdb/db/relational/sql/tree/NodeLocation.java |   68 +
 .../db/relational/sql/tree/NotExpression.java      |   79 +
 .../db/relational/sql/tree/NullIfExpression.java   |   86 +
 .../iotdb/db/relational/sql/tree/NullLiteral.java} |   44 +-
 .../db/relational/sql/tree/NumericParameter.java   |   88 +
 .../iotdb/db/relational/sql/tree/Offset.java       |   94 +
 .../iotdb/db/relational/sql/tree/OrderBy.java      |   89 +
 .../iotdb/db/relational/sql/tree/Parameter.java    |   82 +
 .../iotdb/db/relational/sql/tree/Property.java     |  120 +
 .../db/relational/sql/tree/QualifiedName.java      |  139 ++
 .../sql/tree/QuantifiedComparisonExpression.java   |  123 +
 .../apache/iotdb/db/relational/sql/tree/Query.java |  146 ++
 .../iotdb/db/relational/sql/tree/QueryBody.java}   |   24 +-
 .../db/relational/sql/tree/QuerySpecification.java |  169 ++
 .../iotdb/db/relational/sql/tree/Relation.java}    |   24 +-
 .../iotdb/db/relational/sql/tree/RenameColumn.java |   92 +
 .../iotdb/db/relational/sql/tree/RenameTable.java  |   85 +
 .../apache/iotdb/db/relational/sql/tree/Row.java   |   77 +
 .../sql/tree/SearchedCaseExpression.java           |  107 +
 .../iotdb/db/relational/sql/tree/Select.java       |  100 +
 .../iotdb/db/relational/sql/tree/SelectItem.java}  |   23 +-
 .../db/relational/sql/tree/SetOperation.java}      |   30 +-
 .../db/relational/sql/tree/SetProperties.java      |  107 +
 .../iotdb/db/relational/sql/tree/ShowDB.java       |   64 +
 .../db/relational/sql/tree/ShowFunctions.java      |   65 +
 .../iotdb/db/relational/sql/tree/ShowIndex.java    |   78 +
 .../iotdb/db/relational/sql/tree/ShowTables.java   |   92 +
 .../relational/sql/tree/SimpleCaseExpression.java  |  124 +
 .../db/relational/sql/tree/SimpleGroupBy.java      |   89 +
 .../iotdb/db/relational/sql/tree/SingleColumn.java |  114 +
 .../iotdb/db/relational/sql/tree/SortItem.java     |  122 +
 .../relational/sql/tree/StackableAstVisitor.java   |   65 +
 .../iotdb/db/relational/sql/tree/Statement.java}   |   24 +-
 .../db/relational/sql/tree/StringLiteral.java      |   82 +
 .../db/relational/sql/tree/SubqueryExpression.java |   79 +
 .../db/relational/sql/tree/SymbolReference.java    |   66 +
 .../apache/iotdb/db/relational/sql/tree/Table.java |   89 +
 .../db/relational/sql/tree/TableSubquery.java      |   85 +
 .../apache/iotdb/db/relational/sql/tree/Trim.java  |  141 ++
 .../db/relational/sql/tree/TypeParameter.java      |   78 +
 .../apache/iotdb/db/relational/sql/tree/Union.java |   92 +
 .../iotdb/db/relational/sql/tree/Update.java       |  109 +
 .../db/relational/sql/tree/UpdateAssignment.java   |   84 +
 .../apache/iotdb/db/relational/sql/tree/Use.java   |   81 +
 .../iotdb/db/relational/sql/tree/Values.java       |   83 +
 .../iotdb/db/relational/sql/tree/WhenClause.java   |   86 +
 .../apache/iotdb/db/relational/sql/tree/With.java  |  100 +
 .../iotdb/db/relational/sql/tree/WithQuery.java    |  130 ++
 .../iotdb/db/relational/sql/util/AstUtil.java      |   99 +
 .../relational/sql/util/ExpressionFormatter.java   |  673 ++++++
 .../iotdb/db/relational/sql/util/QueryUtil.java    |  208 ++
 .../relational/sql/util/ReservedIdentifiers.java   |   48 +
 .../iotdb/db/relational/sql/util/SqlFormatter.java |  783 +++++++
 .../src/main/thrift/confignode.thrift              |    8 +
 .../src/main/thrift/datanode.thrift                |   10 +
 pom.xml                                            |    2 +-
 364 files changed, 37209 insertions(+), 899 deletions(-)
 create mode 100644 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/consensus/request/write/table/CommitCreateTablePlan.java
 create mode 100644 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/consensus/request/write/table/PreCreateTablePlan.java
 create mode 100644 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/consensus/request/write/table/RollbackCreateTablePlan.java
 create mode 100644 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/persistence/schema/mnode/impl/ConfigTableNode.java
 create mode 100644 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/persistence/schema/mnode/impl/TableNodeStatus.java
 copy 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/{manager/load/subscriber/NodeStatisticsChangeEvent.java
 => persistence/schema/mnode/info/ConfigTableInfo.java} (50%)
 create mode 100644 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/impl/schema/table/CreateTableProcedure.java
 copy 
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/{manager/load/subscriber/NodeStatisticsChangeEvent.java
 => procedure/state/schema/CreateTableState.java} (50%)
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
datanode/src/main/java/org/apache/iotdb/db/exception/metadata/table/TableAlreadyExistsException.java}
 (50%)
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
datanode/src/main/java/org/apache/iotdb/db/exception/metadata/table/TableNotExistsException.java}
 (50%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/TableScanOperator.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/warnings/DefaultWarningCollector.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/warnings/IoTDBWarning.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/warnings/StandardWarningCode.java}
 (51%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/warnings/WarningCode.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/warnings/WarningCodeSupplier.java}
 (50%)
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/warnings/WarningCollector.java}
 (50%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/TableConfigTaskVisitor.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/metadata/relational/CreateDBTask.java}
 (51%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/metadata/relational/CreateTableTask.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/metadata/relational/DescribeTableTask.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/metadata/relational/DropDBTask.java}
 (51%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/metadata/relational/ShowDBTask.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/metadata/relational/ShowTablesTask.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/metadata/relational/UseDBTask.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/TableOperatorGenerator.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/AggregationAnalyzer.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/Analysis.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/Analyzer.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/CanonicalizationAware.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/CorrelationSupport.java}
 (50%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/ExpressionAnalysis.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/ExpressionAnalyzer.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/ExpressionTreeUtils.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/Field.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/FieldId.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/NodeRef.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/RelationId.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/RelationType.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/ResolvedField.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/Scope.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/ScopeReferenceExtractor.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/StatementAnalyzer.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/StatementAnalyzerFactory.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/cost/CachingTableStatsProvider.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/cost/ColumnStatistics.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/cost/DoubleRange.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/cost/Estimate.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/cost/StatsUtil.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/cost/TableStatistics.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/cost/TableStatsProvider.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/function/BoundSignature.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/function/FunctionId.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/function/FunctionKind.java}
 (50%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/function/LongVariableConstraint.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/function/OperatorType.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/function/Signature.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/function/TypeVariableConstraint.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/BuiltinFunctionResolver.java}
 (50%)
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/ColumnHandle.java}
 (50%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/ColumnMetadata.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/ColumnSchema.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/DeviceEntry.java}
 (51%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/Metadata.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/MetadataUtil.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/OperatorNotFoundException.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/QualifiedObjectName.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/QualifiedTablePrefix.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/ResolvedFunction.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/TableHandle.java}
 (50%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/TableMetadata.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/TableMetadataImpl.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/metadata/TableSchema.java}
 (51%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/Assignments.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/LogicalPlanner.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/OrderingScheme.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/OrderingTranslator.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/PlanBuilder.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/PlannerContext.java}
 (50%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/PredicateUtils.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/QueryPlanner.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/RelationPlan.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/RelationPlanner.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/RelationalModelPlanner.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/RelationalPlanVisitor.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/ScopeAware.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/SortOrder.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/Symbol.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/SymbolAllocator.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/SymbolResolver.java}
 (50%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/distribute/RelationalDistributionPlanner.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/ir/DefaultTraversalVisitor.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/ir/DeterminismEvaluator.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/ir/ExpressionRewriter.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/ir/ExpressionTreeRewriter.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/ir/ExtractCommonPredicatesExpressionRewriter.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/ir/IrUtils.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/ir/IrVisitor.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/ir/NormalizeOrExpressionRewriter.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/FilterNode.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/LimitNode.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/MergeSortNode.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/OffsetNode.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/OutputNode.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/ProjectNode.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/SortNode.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/TableScanNode.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/node/TopKNode.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/IndexScan.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/optimizations/RelationalPlanOptimizer.java
 create 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/planner/optimizations/SimplifyExpressions.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/security/AccessControl.java}
 (50%)
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/security/Identity.java}
 (51%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/type/InternalTypeManager.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/type/NamedTypeSignature.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/type/ParameterKind.java}
 (50%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/type/RowFieldName.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/type/StandardTypes.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/type/TypeId.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/type/TypeManager.java}
 (50%)
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/type/TypeNotFoundException.java}
 (51%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/type/TypeSignature.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/type/TypeSignatureParameter.java
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/type/TypeSignatureTranslator.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/utils/NodeUtils.java}
 (50%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/schemaengine/table/DataNodeTableCache.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
datanode/src/main/java/org/apache/iotdb/db/schemaengine/table/ITableCache.java} 
(50%)
 rename 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/tsfile/timeindex/{DeviceTimeIndex.java
 => ArrayDeviceTimeIndex.java} (83%)
 create mode 100644 
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/tsfile/timeindex/PlainDeviceTimeIndex.java
 create mode 100644 
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/AnalyzerTest.java
 create mode 100644 
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/analyzer/TestMatadata.java
 create mode 100644 
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/PredicateUtilsTest.java
 create mode 100644 
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/table/TsTable.java
 create mode 100644 
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/table/TsTableInternalRPCType.java
 create mode 100644 
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/table/TsTableInternalRPCUtil.java
 create mode 100644 
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/table/column/AttributeColumnSchema.java
 create mode 100644 
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/table/column/IdColumnSchema.java
 create mode 100644 
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/table/column/MeasurementColumnSchema.java
 create mode 100644 
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/table/column/TimeColumnSchema.java
 create mode 100644 
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/table/column/TsTableColumnCategory.java
 create mode 100644 
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/table/column/TsTableColumnSchema.java
 create mode 100644 
iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/table/column/TsTableColumnSchemaUtil.java
 create mode 100644 iotdb-core/relational-grammar/pom.xml
 create mode 100644 
iotdb-core/relational-grammar/src/main/antlr4/org/apache/iotdb/db/relational/grammar/sql/RelationalSql.g4
 create mode 100644 
iotdb-core/relational-grammar/src/main/antlr4/org/apache/iotdb/db/relational/grammar/type/TypeCalculation.g4
 create mode 100644 
iotdb-core/relational-grammar/src/main/java/org/apache/iotdb/db/relational/grammar/sql/RelationalSqlKeywords.java
 copy iotdb-core/{ => relational-parser}/pom.xml (51%)
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/parser/AntlrATNCacheFields.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/parser/AstBuilder.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/parser/CaseInsensitiveStream.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/parser/ErrorHandler.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/parser/ParsingException.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/parser/RefreshableSqlBaseParserInitializer.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/parser/SqlParser.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/AddColumn.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/AliasedRelation.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/AllColumns.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/AllRows.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/ArithmeticBinaryExpression.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/ArithmeticUnaryExpression.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/AstVisitor.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/BetweenPredicate.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/BinaryLiteral.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/BooleanLiteral.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Cast.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/CoalesceExpression.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/ColumnDefinition.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/ComparisonExpression.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/CreateDB.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/CreateFunction.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/CreateIndex.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/CreateTable.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/CurrentDatabase.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/CurrentTime.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/CurrentUser.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/DataType.java}
 (50%)
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/DataTypeParameter.java}
 (51%)
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/DecimalLiteral.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/DefaultExpressionTraversalVisitor.java}
 (50%)
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/DefaultTraversalVisitor.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Delete.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/DereferenceExpression.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/DescribeTable.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/DoubleLiteral.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/DropColumn.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/DropDB.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/DropFunction.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/DropIndex.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/DropTable.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Except.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/ExistsPredicate.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Explain.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/ExplainAnalyze.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Expression.java}
 (51%)
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/FieldReference.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/FunctionCall.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/GenericDataType.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/GenericLiteral.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/GroupBy.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/GroupingElement.java}
 (51%)
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/GroupingSets.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Identifier.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/IfExpression.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/InListExpression.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/InPredicate.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Insert.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Intersect.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/IsNotNullPredicate.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/IsNullPredicate.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Join.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/JoinCriteria.java}
 (50%)
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/JoinOn.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/JoinUsing.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/LikePredicate.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Limit.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Literal.java}
 (51%)
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/LogicalExpression.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/LongLiteral.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/NaturalJoin.java}
 (51%)
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Node.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/NodeLocation.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/NotExpression.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/NullIfExpression.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/NullLiteral.java}
 (51%)
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/NumericParameter.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Offset.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/OrderBy.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Parameter.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Property.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/QualifiedName.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/QuantifiedComparisonExpression.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Query.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/QueryBody.java}
 (50%)
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/QuerySpecification.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Relation.java}
 (50%)
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/RenameColumn.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/RenameTable.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Row.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/SearchedCaseExpression.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Select.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/SelectItem.java}
 (50%)
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/SetOperation.java}
 (51%)
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/SetProperties.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/ShowDB.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/ShowFunctions.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/ShowIndex.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/ShowTables.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/SimpleCaseExpression.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/SimpleGroupBy.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/SingleColumn.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/SortItem.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/StackableAstVisitor.java
 copy 
iotdb-core/{confignode/src/main/java/org/apache/iotdb/confignode/manager/load/subscriber/NodeStatisticsChangeEvent.java
 => 
relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Statement.java}
 (50%)
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/StringLiteral.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/SubqueryExpression.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/SymbolReference.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Table.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/TableSubquery.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Trim.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/TypeParameter.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Union.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Update.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/UpdateAssignment.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Use.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/Values.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/WhenClause.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/With.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/tree/WithQuery.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/util/AstUtil.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/util/ExpressionFormatter.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/util/QueryUtil.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/util/ReservedIdentifiers.java
 create mode 100644 
iotdb-core/relational-parser/src/main/java/org/apache/iotdb/db/relational/sql/util/SqlFormatter.java

Reply via email to