You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by xi...@apache.org on 2022/04/11 12:12:01 UTC

[iotdb] 02/03: Merge branch 'master' into xingtanzjr/mpp_rpc

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

xingtanzjr pushed a commit to branch xingtanzjr/mpp_rpc
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit a6a6e6c285cd6f7e4f15ddfad76d2183d4b18bbe
Merge: 74eca8903c d160be9c22
Author: Jinrui.Zhang <xi...@gmail.com>
AuthorDate: Mon Apr 11 19:26:59 2022 +0800

    Merge branch 'master' into xingtanzjr/mpp_rpc

 confignode/src/assembly/confignode.xml             |   9 +-
 .../resources/conf/iotdb-confignode.properties     |  20 +-
 .../iotdb/confignode/conf/ConfigNodeConf.java      |  25 +-
 .../iotdb/confignode/conf/ConfigNodeConfCheck.java |  29 +-
 .../confignode/conf/ConfigNodeDescriptor.java      |   8 +-
 ...aSet.java => DataNodeConfigurationDataSet.java} |  32 +-
 .../consensus/response/DataNodesInfoDataSet.java   |  12 +-
 .../consensus/response/DataPartitionDataSet.java   | 104 +++++-
 .../consensus/response/SchemaPartitionDataSet.java |  92 ++---
 .../response/StorageGroupSchemaDataSet.java        |  11 +-
 .../iotdb/confignode/manager/ConfigManager.java    |  87 +++--
 .../iotdb/confignode/manager/ConsensusManager.java |  33 +-
 .../iotdb/confignode/manager/DataNodeManager.java  |  87 ++---
 .../apache/iotdb/confignode/manager/Manager.java   |  88 ++---
 .../iotdb/confignode/manager/PartitionManager.java | 193 +++++++----
 .../iotdb/confignode/manager/RegionManager.java    | 126 +++----
 .../iotdb/confignode/partition/DataRegionInfo.java |  66 ----
 .../confignode/partition/SchemaRegionInfo.java     |  59 ----
 .../confignode/partition/StorageGroupSchema.java   |  77 +++--
 .../persistence/DataNodeInfoPersistence.java       | 122 ++++---
 .../persistence/PartitionInfoPersistence.java      | 145 +++++---
 .../persistence/RegionInfoPersistence.java         | 210 ++++++------
 .../iotdb/confignode/physical/PhysicalPlan.java    |  32 +-
 .../confignode/physical/PhysicalPlanType.java      |  12 +-
 .../physical/crud/CreateDataPartitionPlan.java     | 128 +++++++
 .../physical/crud/CreateRegionsPlan.java           |  96 ++++++
 .../physical/crud/CreateSchemaPartitionPlan.java   |  19 +-
 .../crud/GetOrCreateDataPartitionPlan.java         | 139 ++++++++
 .../GetOrCreateSchemaPartitionPlan.java}           |  50 +--
 .../confignode/physical/sys/DataPartitionPlan.java |  78 -----
 .../physical/sys/QueryDataNodeInfoPlan.java        |  14 +
 .../physical/sys/RegisterDataNodePlan.java         |  22 +-
 .../physical/sys/SetStorageGroupPlan.java          |  43 +--
 .../confignode/service/executor/PlanExecutor.java  |  27 +-
 .../server/ConfigNodeRPCServerProcessor.java       | 246 +++++++-------
 .../confignode/consensus/RatisConsensusDemo.java   |  27 +-
 .../manager/ConfigManagerManualTest.java           |  29 +-
 .../hash/DeviceGroupHashExecutorManualTest.java    |   2 +-
 .../physical/SerializeDeserializeUT.java           | 168 +++++++++
 .../server/ConfigNodeRPCServerProcessorTest.java   | 377 +++++++++++++++------
 .../org/apache/iotdb/consensus/IConsensus.java     |   2 +
 .../iotdb/consensus/ratis/RatisConsensus.java      |  15 +
 .../org/apache/iotdb/consensus/ratis/Utils.java    |  12 +-
 .../consensus/standalone/StandAloneConsensus.java  |   8 +
 .../iotdb/consensus/ratis/RatisConsensusTest.java  |   1 +
 .../{partition => cluster}/DataNodeLocation.java   |  51 +--
 .../commons/hash/DeviceGroupHashExecutor.java      |  31 --
 .../iotdb/commons/partition/DataPartition.java     | 128 ++++++-
 .../iotdb/commons/partition/RegionReplicaSet.java  |   1 +
 .../iotdb/commons/partition/SchemaPartition.java   |  49 ++-
 .../commons/partition/SeriesPartitionSlot.java     |  35 +-
 .../iotdb/commons/partition/TimePartitionSlot.java |  33 ++
 .../executor/SeriesPartitionExecutor.java}         |  25 +-
 .../executor}/hash/APHashExecutor.java             |  11 +-
 .../executor}/hash/BKDRHashExecutor.java           |  11 +-
 .../executor}/hash/JSHashExecutor.java             |  11 +-
 .../executor}/hash/SDBMHashExecutor.java           |  11 +-
 .../iotdb/db/metadata/idtable/entry/IDeviceID.java |   4 +
 .../db/metadata/idtable/entry/PlainDeviceID.java   |  12 +
 .../db/metadata/idtable/entry/SHA256DeviceID.java  |  21 ++
 .../apache/iotdb/db/metadata/path/AlignedPath.java |  55 +++
 .../iotdb/db/metadata/path/MeasurementPath.java    |  41 +++
 .../apache/iotdb/db/metadata/path/PartialPath.java |  30 ++
 .../db/metadata/path/PathDeserializeUtil.java      |  59 ++++
 .../iotdb/db/mpp/common/FragmentInstanceId.java    |  34 ++
 .../apache/iotdb/db/mpp/common/PlanFragmentId.java |  25 ++
 .../org/apache/iotdb/db/mpp/common/QueryId.java    |   4 +
 .../db/mpp/common/filter/BasicFunctionFilter.java  |  20 ++
 .../mpp/common/filter/FilterDeserializeUtil.java   |  63 ++++
 .../iotdb/db/mpp/common/filter/FunctionFilter.java |  43 +++
 .../iotdb/db/mpp/common/filter/InFilter.java       |  23 ++
 .../iotdb/db/mpp/common/filter/LikeFilter.java     |  18 +
 .../iotdb/db/mpp/common/filter/QueryFilter.java    |  60 ++++
 .../iotdb/db/mpp/common/filter/RegexpFilter.java   |  16 +
 .../db/mpp/execution/FragmentInstanceInfo.java     |   1 -
 .../mpp/sql/analyze/FakePartitionFetcherImpl.java  |   1 +
 .../apache/iotdb/db/mpp/sql/parser/ASTVisitor.java |   3 +-
 .../db/mpp/sql/planner/plan/FragmentInstance.java  |  54 ++-
 .../db/mpp/sql/planner/plan/PlanFragment.java      |  28 +-
 .../db/mpp/sql/planner/plan/node/ColumnHeader.java |  18 +
 .../db/mpp/sql/planner/plan/node/PlanNode.java     |  36 +-
 .../db/mpp/sql/planner/plan/node/PlanNodeId.java   |  14 +
 .../db/mpp/sql/planner/plan/node/PlanNodeType.java |   3 +-
 .../plan/node/metedata/read/ShowDevicesNode.java   |  15 +-
 .../planner/plan/node/metedata/read/ShowNode.java  |   4 +-
 .../node/metedata/write/AlterTimeSeriesNode.java   |  13 +-
 .../plan/node/metedata/write/AuthorNode.java       |   5 +
 .../write/CreateAlignedTimeSeriesNode.java         |  14 +-
 .../node/metedata/write/CreateTimeSeriesNode.java  |  28 +-
 .../planner/plan/node/process/AggregateNode.java   |  47 ++-
 .../planner/plan/node/process/DeviceMergeNode.java |  51 ++-
 .../planner/plan/node/process/ExchangeNode.java    |  55 ++-
 .../sql/planner/plan/node/process/FillNode.java    |  36 +-
 .../sql/planner/plan/node/process/FilterNode.java  |  34 +-
 .../planner/plan/node/process/FilterNullNode.java  |  32 +-
 .../plan/node/process/GroupByLevelNode.java        |  42 ++-
 .../sql/planner/plan/node/process/LimitNode.java   |  15 +-
 .../sql/planner/plan/node/process/OffsetNode.java  |  19 +-
 .../sql/planner/plan/node/process/SortNode.java    |  47 ++-
 .../planner/plan/node/process/TimeJoinNode.java    |  31 +-
 .../planner/plan/node/sink/FragmentSinkNode.java   |  47 ++-
 .../plan/node/source/SeriesAggregateScanNode.java  |  54 ++-
 .../planner/plan/node/source/SeriesScanNode.java   |  75 +++-
 .../InsertMultiTabletNode.java}                    |  19 +-
 .../sql/planner/plan/node/write/InsertNode.java    |   5 +-
 .../sql/planner/plan/node/write/InsertRowNode.java |   8 +-
 .../planner/plan/node/write/InsertTabletNode.java  |   8 +-
 .../db/mpp/sql/statement/component/FillPolicy.java |   2 +-
 .../statement/component/FilterNullComponent.java   |  44 +++
 .../apache/iotdb/db/qp/sql/IoTDBSqlVisitor.java    |   3 +-
 .../iotdb/db/qp/utils/GroupByLevelController.java  |  90 +++++
 .../db/query/aggregation/AggregateResult.java      |   9 +
 .../iotdb/db/query/expression/Expression.java      |   6 +
 .../iotdb/db/query/expression/ExpressionType.java  | 115 +++++++
 .../iotdb/db/query/expression/ResultColumn.java    |  17 +
 .../expression/binary/AdditionExpression.java      |  19 ++
 .../query/expression/binary/BinaryExpression.java  |   8 +
 .../expression/binary/DivisionExpression.java      |  19 ++
 .../query/expression/binary/EqualToExpression.java |  19 ++
 .../expression/binary/GreaterEqualExpression.java  |  19 ++
 .../expression/binary/GreaterThanExpression.java   |  19 ++
 .../expression/binary/LessEqualExpression.java     |  19 ++
 .../expression/binary/LessThanExpression.java      |  19 ++
 .../expression/binary/LogicAndExpression.java      |  19 ++
 .../query/expression/binary/LogicOrExpression.java |  19 ++
 .../query/expression/binary/ModuloExpression.java  |  19 ++
 .../binary/MultiplicationExpression.java           |  19 ++
 .../expression/binary/NonEqualExpression.java      |  19 ++
 .../expression/binary/SubtractionExpression.java   |  19 ++
 .../db/query/expression/unary/ConstantOperand.java |  22 +-
 .../query/expression/unary/FunctionExpression.java |  31 ++
 .../query/expression/unary/LogicNotExpression.java |  18 +
 .../query/expression/unary/NegationExpression.java |  18 +
 .../query/expression/unary/TimeSeriesOperand.java  |  19 ++
 .../java/org/apache/iotdb/db/service/DataNode.java |  10 +-
 .../iotdb/db/utils/IExpressionDeserializeUtil.java |  51 +++
 .../db/mpp/sql/plan/DistributionPlannerTest.java   |   2 +-
 .../db/mpp/sql/plan/FragmentInstanceSerdeTest.java | 117 +++++++
 .../sql/plan/node/PlanNodeDeserializeHelper.java}  |  18 +-
 .../metadata/read/ShowDevicesNodeSerdeTest.java}   |  23 +-
 .../plan/node/process/AggregateNodeSerdeTest.java  |  58 ++++
 .../node/process/DeviceMergeNodeSerdeTest.java     |  81 +++++
 .../plan/node/process/ExchangeNodeSerdeTest.java   | 101 ++++++
 .../sql/plan/node/process/FillNodeSerdeTest.java   |  85 +++++
 .../sql/plan/node/process/FilterNodeSerdeTest.java |  97 ++++++
 .../plan/node/process/FilterNullNodeSerdeTest.java | 102 ++++++
 .../node/process/GroupByLevelNodeSerdeTest.java    | 117 +++++++
 .../sql/plan/node/process/LimitNodeSerdeTest.java  | 119 +++++++
 .../sql/plan/node/process/OffsetNodeSerdeTest.java | 186 ++++++++++
 .../sql/plan/node/process/SortNodeSerdeTest.java   | 130 +++++++
 .../plan/node/process/TimeJoinNodeSerdeTest.java   | 135 ++++++++
 .../plan/node/sink/FragmentSinkNodeSerdeTest.java  |  52 +++
 .../source/SeriesAggregateScanNodeSerdeTest.java   |  69 ++++
 .../plan/node/source/SeriesScanNodeSerdeTest.java  |  55 +++
 .../java/org/apache/iotdb/rpc/TSStatusCode.java    |   7 +-
 .../src/main/thrift/confignode.thrift              | 137 ++++----
 thrift/src/main/thrift/common.thrift               |  13 +-
 thrift/src/main/thrift/management.thrift           |   4 +-
 .../org/apache/iotdb/tsfile/read/common/Path.java  |  21 ++
 .../iotdb/tsfile/read/expression/IExpression.java  |   3 +
 .../read/expression/impl/BinaryExpression.java     |  16 +
 .../read/expression/impl/GlobalTimeExpression.java |  13 +
 .../expression/impl/SingleSeriesExpression.java    |   9 +
 .../iotdb/tsfile/read/filter/basic/Filter.java     |   8 +
 .../iotdb/tsfile/utils/ReadWriteIOUtils.java       |  31 ++
 165 files changed, 6001 insertions(+), 1487 deletions(-)

diff --cc server/src/main/java/org/apache/iotdb/db/mpp/common/FragmentInstanceId.java
index 6564274996,b22f480589..49b0aa3dd2
--- a/server/src/main/java/org/apache/iotdb/db/mpp/common/FragmentInstanceId.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/common/FragmentInstanceId.java
@@@ -60,10 -74,23 +74,30 @@@ public class FragmentInstanceId 
      return new TFragmentInstanceId(queryId.getId(), String.valueOf(fragmentId.getId()), instanceId);
    }
  
 +  public static FragmentInstanceId fromThrift(TFragmentInstanceId tFragmentInstanceId) {
 +    return new FragmentInstanceId(
 +        new PlanFragmentId(
 +            tFragmentInstanceId.queryId, Integer.parseInt(tFragmentInstanceId.fragmentId)),
 +        tFragmentInstanceId.instanceId);
 +  }
++
+   @Override
+   public boolean equals(Object o) {
+     if (this == o) {
+       return true;
+     }
+     if (o == null || getClass() != o.getClass()) {
+       return false;
+     }
+     FragmentInstanceId that = (FragmentInstanceId) o;
+     return Objects.equals(fullId, that.fullId)
+         && Objects.equals(queryId, that.queryId)
+         && Objects.equals(fragmentId, that.fragmentId)
+         && Objects.equals(instanceId, that.instanceId);
+   }
+ 
+   @Override
+   public int hashCode() {
+     return Objects.hash(fullId, queryId, fragmentId, instanceId);
+   }
  }