This is an automated email from the ASF dual-hosted git repository.
hui pushed a change to branch lmh/PredicatePushDown
in repository https://gitbox.apache.org/repos/asf/iotdb.git
from dd58965f4a9 Merge remote-tracking branch 'origin/master' into
lmh/PredicatePushDown
add 9bcef1c22f8 Support InnerTimeJoin & LeftOuterTimeJoin distribution
planner (#11860)
add 6eab0bd5f45 Merge remote-tracking branch 'origin/master' into
lmh/PredicatePushDown
add 65affdf1faf merge master & fix inner join serde bug
add 36aec99cff7 fix UT
No new revisions were added by this update.
Summary of changes:
.../protocol/thrift/impl/ClientRPCServiceImpl.java | 5 +-
.../fragment/FragmentInstanceContext.java | 15 +-
.../process/join/InnerTimeJoinOperator.java | 26 +-
.../db/queryengine/plan/analyze/Analysis.java | 19 +-
.../plan/optimization/ColumnInjectionPushDown.java | 8 +
.../plan/optimization/LimitOffsetPushDown.java | 15 +
.../plan/optimization/PredicatePushDown.java | 2 +-
.../plan/planner/LocalExecutionPlanContext.java | 16 +
.../plan/planner/LocalExecutionPlanner.java | 2 +
.../plan/planner/OperatorTreeGenerator.java | 33 +-
.../planner/distribution/ExchangeNodeAdder.java | 78 ++++
.../plan/planner/distribution/SourceRewriter.java | 180 +++++++++
.../plan/planner/plan/node/PlanGraphPrinter.java | 47 ++-
.../plan/node/process/join/InnerTimeJoinNode.java | 126 ++++++-
.../planner/plan/node/write/DeleteDataNode.java | 2 +-
.../db/storageengine/dataregion/DataRegion.java | 7 +-
.../dataregion/IDataRegionForQuery.java | 3 +-
.../dataregion/VirtualDataRegion.java | 3 +-
.../dataregion/tsfile/TsFileManager.java | 21 +-
.../db/queryengine/execution/DataDriverTest.java | 3 +-
.../process/join/InnerTimeJoinOperatorTest.java | 417 ++++++++++++++++++++-
.../db/queryengine/plan/analyze/AnalyzeTest.java | 8 +-
.../plan/optimization/TestPlanBuilder.java | 2 +-
.../plan/{plan => planner}/ExpressionTest.java | 2 +-
.../{plan => planner}/FragmentInstanceIdTest.java | 2 +-
.../FragmentInstanceSerdeTest.java | 2 +-
.../plan/{plan => planner}/LogicalPlannerTest.java | 9 +-
.../{plan => planner}/PipelineBuilderTest.java | 4 +-
.../{plan => planner}/QueryLogicalPlanUtil.java | 2 +-
.../plan/{plan => planner}/QueryPlannerTest.java | 2 +-
.../distribution/AggregationDistributionTest.java | 3 +-
.../AlignByDeviceOrderByLimitOffsetTest.java | 3 +-
.../distribution/AlignedByDeviceTest.java | 3 +-
.../distribution/DistributionPlannerBasicTest.java | 3 +-
.../distribution/DistributionPlannerCycleTest.java | 3 +-
.../distribution/LastQueryTest.java | 3 +-
.../distribution/NoDataRegionPlanningTest.java | 3 +-
.../distribution/SplitTimePartitionTest.java | 273 ++++++++++++++
.../plan/{plan => planner}/distribution/Util.java | 2 +-
.../plan/{plan => planner}/distribution/Util2.java | 2 +-
.../node/PlanGraphPrinterTest.java | 2 +-
.../node/PlanNodeDeserializeHelper.java | 2 +-
.../node/load/LoadTsFileNodeTest.java | 2 +-
.../read/DeviceSchemaScanNodeSerdeTest.java | 4 +-
.../NodeManagementMemoryMergeNodeSerdeTest.java | 4 +-
.../read/PathsUsingTemplateScanNodeTest.java | 2 +-
.../metadata/read/SchemaCountNodeSerdeTest.java | 4 +-
.../metadata/read/SchemaFetchMergeNodeTest.java | 2 +-
.../metadata/read/SchemaFetchScanNodeTest.java | 2 +-
.../read/TimeSeriesSchemaScanNodeSerdeTest.java | 4 +-
.../metadata/write/MetadataWriteNodeSerDeTest.java | 2 +-
.../node/process/AggregationNodeSerdeTest.java | 4 +-
.../node/process/DeviceViewNodeSerdeTest.java | 4 +-
.../node/process/ExchangeNodeSerdeTest.java | 4 +-
.../node/process/FillNodeSerdeTest.java | 4 +-
.../node/process/FilterNodeSerdeTest.java | 4 +-
.../node/process/GroupByLevelNodeSerdeTest.java | 4 +-
.../node/process/GroupByTagNodeSerdeTest.java | 4 +-
.../node/process/IntoNodeSerdeTest.java | 4 +-
.../node/process/LimitNodeSerdeTest.java | 4 +-
.../node/process/OffsetNodeSerdeTest.java | 4 +-
.../process/SingleDeviceViewNodeSerdeTest.java | 4 +-
.../node/process/SortNodeSerdeTest.java | 4 +-
.../node/process/TimeJoinNodeSerdeTest.java | 23 +-
.../node/sink/IdentitySinkNodeSerdeTest.java | 4 +-
.../node/sink/ShuffleSinkHandleNodeSerdeTest.java | 4 +-
.../source/SeriesAggregationScanNodeSerdeTest.java | 4 +-
.../node/source/SeriesScanNodeSerdeTest.java | 4 +-
.../node/write/DeleteDataNodeSerdeTest.java | 2 +-
.../write/InsertMultiTabletsNodeSerdeTest.java | 2 +-
.../node/write/InsertRowNodeSerdeTest.java | 2 +-
.../node/write/InsertRowsNodeSerdeTest.java | 2 +-
.../write/InsertRowsOfOneDeviceNodeSerdeTest.java | 2 +-
.../node/write/InsertTabletNodeSerdeTest.java | 2 +-
.../node/write/WritePlanNodeSplitTest.java | 2 +-
.../statement/sys/pipe/PipeStatementTest.java | 2 +-
.../storageengine/dataregion/DataRegionTest.java | 12 +
.../iotdb/db/storageengine/dataregion/TTLTest.java | 3 +
.../iotdb/commons/partition/DataPartition.java | 77 +++-
79 files changed, 1443 insertions(+), 141 deletions(-)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/ExpressionTest.java (98%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/FragmentInstanceIdTest.java (96%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/FragmentInstanceSerdeTest.java (99%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/LogicalPlannerTest.java (98%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/PipelineBuilderTest.java (99%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/QueryLogicalPlanUtil.java (99%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/QueryPlannerTest.java (98%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/distribution/AggregationDistributionTest.java (99%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/distribution/AlignByDeviceOrderByLimitOffsetTest.java (98%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/distribution/AlignedByDeviceTest.java (99%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/distribution/DistributionPlannerBasicTest.java (98%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/distribution/DistributionPlannerCycleTest.java (96%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/distribution/LastQueryTest.java (98%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/distribution/NoDataRegionPlanningTest.java (93%)
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/planner/distribution/SplitTimePartitionTest.java
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/distribution/Util.java (99%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/distribution/Util2.java (99%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/PlanGraphPrinterTest.java (98%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/PlanNodeDeserializeHelper.java (95%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/load/LoadTsFileNodeTest.java (98%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/metadata/read/DeviceSchemaScanNodeSerdeTest.java (96%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/metadata/read/NodeManagementMemoryMergeNodeSerdeTest.java (97%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/metadata/read/PathsUsingTemplateScanNodeTest.java (96%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/metadata/read/SchemaCountNodeSerdeTest.java (97%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/metadata/read/SchemaFetchMergeNodeTest.java (97%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/metadata/read/SchemaFetchScanNodeTest.java (97%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/metadata/read/TimeSeriesSchemaScanNodeSerdeTest.java (96%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/metadata/write/MetadataWriteNodeSerDeTest.java (99%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/process/AggregationNodeSerdeTest.java (99%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/process/DeviceViewNodeSerdeTest.java (94%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/process/ExchangeNodeSerdeTest.java (95%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/process/FillNodeSerdeTest.java (93%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/process/FilterNodeSerdeTest.java (94%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/process/GroupByLevelNodeSerdeTest.java (97%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/process/GroupByTagNodeSerdeTest.java (97%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/process/IntoNodeSerdeTest.java (96%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/process/LimitNodeSerdeTest.java (93%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/process/OffsetNodeSerdeTest.java (93%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/process/SingleDeviceViewNodeSerdeTest.java (93%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/process/SortNodeSerdeTest.java (94%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/process/TimeJoinNodeSerdeTest.java (83%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/sink/IdentitySinkNodeSerdeTest.java (94%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/sink/ShuffleSinkHandleNodeSerdeTest.java (94%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/source/SeriesAggregationScanNodeSerdeTest.java (95%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/source/SeriesScanNodeSerdeTest.java (93%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/write/DeleteDataNodeSerdeTest.java (97%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/write/InsertMultiTabletsNodeSerdeTest.java (98%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/write/InsertRowNodeSerdeTest.java (99%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/write/InsertRowsNodeSerdeTest.java (97%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/write/InsertRowsOfOneDeviceNodeSerdeTest.java (97%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/write/InsertTabletNodeSerdeTest.java (98%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/node/write/WritePlanNodeSplitTest.java (99%)
rename
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/{plan =>
planner}/statement/sys/pipe/PipeStatementTest.java (98%)