This is an automated email from the ASF dual-hosted git repository.
qiaojialin pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/master by this push:
new 2daf974568 [IOTDB-3372] Divide the Slots in the display results of
show regions into two columns: series slots and time slots (#6499)
2daf974568 is described below
commit 2daf9745687505d03aa8fa7a00fd4f87626e03b3
Author: 任宇华 <[email protected]>
AuthorDate: Wed Jun 29 20:58:08 2022 +0800
[IOTDB-3372] Divide the Slots in the display results of show regions into
two columns: series slots and time slots (#6499)
---
.../persistence/partition/RegionGroup.java | 6 +-
.../partition/StorageGroupPartitionTable.java | 9 ++-
.../Maintenance-Tools/Maintenance-Command.md | 94 ++++++++++++++++------
.../Maintenance-Tools/Maintenance-Command.md | 94 ++++++++++++++++------
.../iotdb/db/mpp/common/header/HeaderConstant.java | 6 +-
.../mpp/plan/execution/config/ShowRegionTask.java | 9 ++-
thrift-commons/src/main/thrift/common.thrift | 5 +-
7 files changed, 161 insertions(+), 62 deletions(-)
diff --git
a/confignode/src/main/java/org/apache/iotdb/confignode/persistence/partition/RegionGroup.java
b/confignode/src/main/java/org/apache/iotdb/confignode/persistence/partition/RegionGroup.java
index 555a5195f8..4f0c4298b2 100644
---
a/confignode/src/main/java/org/apache/iotdb/confignode/persistence/partition/RegionGroup.java
+++
b/confignode/src/main/java/org/apache/iotdb/confignode/persistence/partition/RegionGroup.java
@@ -35,8 +35,10 @@ public class RegionGroup {
private final TRegionReplicaSet replicaSet;
- // For DataRegion, each SeriesSlot * TimeSlot form a slot,
- // for SchemaRegion, each SeriesSlot is a slot
+ // For DataRegion, a SeriesSlot and a TimeSlot constitute a DataPartition.
+ // Eg: A DataRegion contains SeriesSlot-1 which has TimeSlot-1, TimeSlot-2
and Timeslot-3,
+ // then (SeriesSlot-1 -> TimeSlot-1) constitute a DataPartition.
+ // For SchemaRegion, each SeriesSlot constitute a SchemaPartition.
private final AtomicLong slotCount;
public RegionGroup() {
diff --git
a/confignode/src/main/java/org/apache/iotdb/confignode/persistence/partition/StorageGroupPartitionTable.java
b/confignode/src/main/java/org/apache/iotdb/confignode/persistence/partition/StorageGroupPartitionTable.java
index 081030cb5c..525247728e 100644
---
a/confignode/src/main/java/org/apache/iotdb/confignode/persistence/partition/StorageGroupPartitionTable.java
+++
b/confignode/src/main/java/org/apache/iotdb/confignode/persistence/partition/StorageGroupPartitionTable.java
@@ -386,8 +386,13 @@ public class StorageGroupPartitionTable {
TRegionInfo tRegionInfoList = new TRegionInfo();
tRegionInfoList.setConsensusGroupId(replicaSet.getRegionId());
tRegionInfoList.setStorageGroup(storageGroupName);
- long slots = regionGroup.getCounter();
- tRegionInfoList.setSlots((int) slots);
+ if (replicaSet.getRegionId().getType() ==
TConsensusGroupType.DataRegion) {
+
tRegionInfoList.setSeriesSlots(dataPartitionTable.getDataPartitionMap().size());
+ tRegionInfoList.setTimeSlots(regionGroup.getCounter());
+ } else if (replicaSet.getRegionId().getType() ==
TConsensusGroupType.SchemaRegion) {
+ tRegionInfoList.setSeriesSlots(regionGroup.getCounter());
+ tRegionInfoList.setTimeSlots(0);
+ }
tRegionInfoList.setDataNodeId(dataNodeLocation.getDataNodeId());
tRegionInfoList.setClientRpcIp(dataNodeLocation.getClientRpcEndPoint().getIp());
tRegionInfoList.setClientRpcPort(dataNodeLocation.getClientRpcEndPoint().getPort());
diff --git a/docs/UserGuide/Maintenance-Tools/Maintenance-Command.md
b/docs/UserGuide/Maintenance-Tools/Maintenance-Command.md
index 6df5352bf9..25210d8c8b 100644
--- a/docs/UserGuide/Maintenance-Tools/Maintenance-Command.md
+++ b/docs/UserGuide/Maintenance-Tools/Maintenance-Command.md
@@ -137,47 +137,91 @@ Msg: The statement is executed successfully.
IoTDB> create timeseries root.ln.d1.s1 with datatype=BOOLEAN,encoding=PLAIN
Msg: The statement is executed successfully.
IoTDB> show regions
-+--------+------------+------+-------------+-----+----------+---------+----+
-|RegionId| Type|Status|storage group|Slots|DataNodeId| Host|Port|
-+--------+------------+------+-------------+-----+----------+---------+----+
-| 0|SchemaRegion| Up| root.sg| 2| 2|127.0.0.1|6669|
-| 1|SchemaRegion| Up| root.ln| 1| 3|127.0.0.1|6667|
-+--------+------------+------+-------------+-----+----------+---------+----+
++--------+------------+------+-------------+------------+----------+----------+---------+----+
+|RegionId| Type|Status|storage group|Series Slots|Time
Slots|DataNodeId| Host|Port|
++--------+------------+------+-------------+------------+----------+----------+---------+----+
+| 0|SchemaRegion| Up| root.sg| 2| 0|
3|127.0.0.1|6671|
+| 1|SchemaRegion| Up| root.ln| 1| 0|
2|127.0.0.1|6667|
++--------+------------+------+-------------+------------+----------+----------+---------+----+
Total line number = 2
It costs 0.035s
IoTDB> insert into root.sg.d1(timestamp,s1) values(1,true)
Msg: The statement is executed successfully.
IoTDB> show regions
-+--------+------------+------+-------------+-----+----------+---------+----+
-|RegionId| Type|Status|storage group|Slots|DataNodeId| Host|Port|
-+--------+------------+------+-------------+-----+----------+---------+----+
-| 0|SchemaRegion| Up| root.sg| 2| 2|127.0.0.1|6669|
-| 1|SchemaRegion| Up| root.ln| 1| 3|127.0.0.1|6667|
-| 2| DataRegion| Up| root.sg| 1| 1|127.0.0.1|6671|
-+--------+------------+------+-------------+-----+----------+---------+----+
++--------+------------+------+-------------+------------+----------+----------+---------+----+
+|RegionId| Type|Status|storage group|Series Slots|Time
Slots|DataNodeId| Host|Port|
++--------+------------+------+-------------+------------+----------+----------+---------+----+
+| 0|SchemaRegion| Up| root.sg| 2| 0|
3|127.0.0.1|6671|
+| 1| DataRegion| Up| root.sg| 1| 1|
1|127.0.0.1|6669|
+| 1|SchemaRegion| Up| root.ln| 1| 0|
2|127.0.0.1|6667|
++--------+------------+------+-------------+------------+----------+----------+---------+----+
Total line number = 3
It costs 0.010s
IoTDB> insert into root.ln.d1(timestamp,s1) values(1,true)
Msg: The statement is executed successfully.
IoTDB> show data regions
-+--------+----------+------+-------------+-----+----------+---------+----+
-|RegionId| Type|Status|storage group|Slots|DataNodeId| Host|Port|
-+--------+----------+------+-------------+-----+----------+---------+----+
-| 2|DataRegion| Up| root.sg| 1| 1|127.0.0.1|6671|
-| 3|DataRegion| Up| root.ln| 1| 1|127.0.0.1|6671|
-+--------+----------+------+-------------+-----+----------+---------+----+
++--------+----------+------+-------------+------------+----------+----------+---------+----+
+|RegionId| Type|Status|storage group|Series Slots|Time Slots|DataNodeId|
Host|Port|
++--------+----------+------+-------------+------------+----------+----------+---------+----+
+| 1|DataRegion| Up| root.sg| 1| 1|
1|127.0.0.1|6669|
+| 2|DataRegion| Up| root.ln| 1| 1|
1|127.0.0.1|6669|
++--------+----------+------+-------------+------------+----------+----------+---------+----+
Total line number = 2
It costs 0.011s
IoTDB> show schema regions
-+--------+------------+------+-------------+-----+----------+---------+----+
-|RegionId| Type|Status|storage group|Slots|DataNodeId| Host|Port|
-+--------+------------+------+-------------+-----+----------+---------+----+
-| 0|SchemaRegion| Up| root.sg| 2| 2|127.0.0.1|6669|
-| 1|SchemaRegion| Up| root.ln| 1| 3|127.0.0.1|6667|
-+--------+------------+------+-------------+-----+----------+---------+----+
++--------+------------+------+-------------+------------+----------+----------+---------+----+
+|RegionId| Type|Status|storage group|Series Slots|Time
Slots|DataNodeId| Host|Port|
++--------+------------+------+-------------+------------+----------+----------+---------+----+
+| 0|SchemaRegion| Up| root.sg| 2| 0|
3|127.0.0.1|6671|
+| 1|SchemaRegion| Up| root.ln| 1| 0|
2|127.0.0.1|6667|
++--------+------------+------+-------------+------------+----------+----------+---------+----+
Total line number = 2
It costs 0.012s
```
+## Cluster node status viewing tool
+
+Show all node information:
+
+```
+SHOW CLUSTER
+```
+
+Eg:
+
+```
+IoTDB> show cluster
++------+----------+-------+---------+-----+
+|NodeID| NodeType| Status| Host| Port|
++------+----------+-------+---------+-----+
+| 4|ConfigNode|Running| 0.0.0.0|22279|
+| 0|ConfigNode|Running| 0.0.0.0|22277|
+| 5|ConfigNode|Running| 0.0.0.0|22281|
+| 1| DataNode|Running|127.0.0.1| 9005|
+| 2| DataNode|Running|127.0.0.1| 9003|
+| 3| DataNode|Running|127.0.0.1| 9007|
++------+----------+-------+---------+-----+
+Total line number = 6
+It costs 0.011s
+```
+
+After a node is stopped, its status will change, as shown below:
+
+```
+IoTDB> show cluster
++------+----------+-------+---------+-----+
+|NodeID| NodeType| Status| Host| Port|
++------+----------+-------+---------+-----+
+| 4|ConfigNode|Running| 0.0.0.0|22279|
+| 0|ConfigNode|Running| 0.0.0.0|22277|
+| 5|ConfigNode|Unknown| 0.0.0.0|22281|
+| 1| DataNode|Running|127.0.0.1| 9005|
+| 2| DataNode|Running|127.0.0.1| 9003|
+| 3| DataNode|Running|127.0.0.1| 9007|
++------+----------+-------+---------+-----+
+Total line number = 6
+It costs 0.012s
+```
+
diff --git a/docs/zh/UserGuide/Maintenance-Tools/Maintenance-Command.md
b/docs/zh/UserGuide/Maintenance-Tools/Maintenance-Command.md
index 875014ad75..212dd04060 100644
--- a/docs/zh/UserGuide/Maintenance-Tools/Maintenance-Command.md
+++ b/docs/zh/UserGuide/Maintenance-Tools/Maintenance-Command.md
@@ -132,47 +132,91 @@ Msg: The statement is executed successfully.
IoTDB> create timeseries root.ln.d1.s1 with datatype=BOOLEAN,encoding=PLAIN
Msg: The statement is executed successfully.
IoTDB> show regions
-+--------+------------+------+-------------+-----+----------+---------+----+
-|RegionId| Type|Status|storage group|Slots|DataNodeId| Host|Port|
-+--------+------------+------+-------------+-----+----------+---------+----+
-| 0|SchemaRegion| Up| root.sg| 2| 2|127.0.0.1|6669|
-| 1|SchemaRegion| Up| root.ln| 1| 3|127.0.0.1|6667|
-+--------+------------+------+-------------+-----+----------+---------+----+
++--------+------------+------+-------------+------------+----------+----------+---------+----+
+|RegionId| Type|Status|storage group|Series Slots|Time
Slots|DataNodeId| Host|Port|
++--------+------------+------+-------------+------------+----------+----------+---------+----+
+| 0|SchemaRegion| Up| root.sg| 2| 0|
3|127.0.0.1|6671|
+| 1|SchemaRegion| Up| root.ln| 1| 0|
2|127.0.0.1|6667|
++--------+------------+------+-------------+------------+----------+----------+---------+----+
Total line number = 2
It costs 0.035s
IoTDB> insert into root.sg.d1(timestamp,s1) values(1,true)
Msg: The statement is executed successfully.
IoTDB> show regions
-+--------+------------+------+-------------+-----+----------+---------+----+
-|RegionId| Type|Status|storage group|Slots|DataNodeId| Host|Port|
-+--------+------------+------+-------------+-----+----------+---------+----+
-| 0|SchemaRegion| Up| root.sg| 2| 2|127.0.0.1|6669|
-| 1|SchemaRegion| Up| root.ln| 1| 3|127.0.0.1|6667|
-| 2| DataRegion| Up| root.sg| 1| 1|127.0.0.1|6671|
-+--------+------------+------+-------------+-----+----------+---------+----+
++--------+------------+------+-------------+------------+----------+----------+---------+----+
+|RegionId| Type|Status|storage group|Series Slots|Time
Slots|DataNodeId| Host|Port|
++--------+------------+------+-------------+------------+----------+----------+---------+----+
+| 0|SchemaRegion| Up| root.sg| 2| 0|
3|127.0.0.1|6671|
+| 1| DataRegion| Up| root.sg| 1| 1|
1|127.0.0.1|6669|
+| 1|SchemaRegion| Up| root.ln| 1| 0|
2|127.0.0.1|6667|
++--------+------------+------+-------------+------------+----------+----------+---------+----+
Total line number = 3
It costs 0.010s
IoTDB> insert into root.ln.d1(timestamp,s1) values(1,true)
Msg: The statement is executed successfully.
IoTDB> show data regions
-+--------+----------+------+-------------+-----+----------+---------+----+
-|RegionId| Type|Status|storage group|Slots|DataNodeId| Host|Port|
-+--------+----------+------+-------------+-----+----------+---------+----+
-| 2|DataRegion| Up| root.sg| 1| 1|127.0.0.1|6671|
-| 3|DataRegion| Up| root.ln| 1| 1|127.0.0.1|6671|
-+--------+----------+------+-------------+-----+----------+---------+----+
++--------+----------+------+-------------+------------+----------+----------+---------+----+
+|RegionId| Type|Status|storage group|Series Slots|Time Slots|DataNodeId|
Host|Port|
++--------+----------+------+-------------+------------+----------+----------+---------+----+
+| 1|DataRegion| Up| root.sg| 1| 1|
1|127.0.0.1|6669|
+| 2|DataRegion| Up| root.ln| 1| 1|
1|127.0.0.1|6669|
++--------+----------+------+-------------+------------+----------+----------+---------+----+
Total line number = 2
It costs 0.011s
IoTDB> show schema regions
-+--------+------------+------+-------------+-----+----------+---------+----+
-|RegionId| Type|Status|storage group|Slots|DataNodeId| Host|Port|
-+--------+------------+------+-------------+-----+----------+---------+----+
-| 0|SchemaRegion| Up| root.sg| 2| 2|127.0.0.1|6669|
-| 1|SchemaRegion| Up| root.ln| 1| 3|127.0.0.1|6667|
-+--------+------------+------+-------------+-----+----------+---------+----+
++--------+------------+------+-------------+------------+----------+----------+---------+----+
+|RegionId| Type|Status|storage group|Series Slots|Time
Slots|DataNodeId| Host|Port|
++--------+------------+------+-------------+------------+----------+----------+---------+----+
+| 0|SchemaRegion| Up| root.sg| 2| 0|
3|127.0.0.1|6671|
+| 1|SchemaRegion| Up| root.ln| 1| 0|
2|127.0.0.1|6667|
++--------+------------+------+-------------+------------+----------+----------+---------+----+
Total line number = 2
It costs 0.012s
```
+## 集群节点状态查看工具
+
+查看全部节点信息 :
+
+```
+SHOW CLUSTER
+```
+
+示例:
+
+```
+IoTDB> show cluster
++------+----------+-------+---------+-----+
+|NodeID| NodeType| Status| Host| Port|
++------+----------+-------+---------+-----+
+| 4|ConfigNode|Running| 0.0.0.0|22279|
+| 0|ConfigNode|Running| 0.0.0.0|22277|
+| 5|ConfigNode|Running| 0.0.0.0|22281|
+| 1| DataNode|Running|127.0.0.1| 9005|
+| 2| DataNode|Running|127.0.0.1| 9003|
+| 3| DataNode|Running|127.0.0.1| 9007|
++------+----------+-------+---------+-----+
+Total line number = 6
+It costs 0.011s
+```
+
+停止一个节点之后,节点的状态会发生改变,状态显示如下:
+
+```
+IoTDB> show cluster
++------+----------+-------+---------+-----+
+|NodeID| NodeType| Status| Host| Port|
++------+----------+-------+---------+-----+
+| 4|ConfigNode|Running| 0.0.0.0|22279|
+| 0|ConfigNode|Running| 0.0.0.0|22277|
+| 5|ConfigNode|Unknown| 0.0.0.0|22281|
+| 1| DataNode|Running|127.0.0.1| 9005|
+| 2| DataNode|Running|127.0.0.1| 9003|
+| 3| DataNode|Running|127.0.0.1| 9007|
++------+----------+-------+---------+-----+
+Total line number = 6
+It costs 0.012s
+```
+
diff --git
a/server/src/main/java/org/apache/iotdb/db/mpp/common/header/HeaderConstant.java
b/server/src/main/java/org/apache/iotdb/db/mpp/common/header/HeaderConstant.java
index bc2309f9e9..38a59a61d0 100644
---
a/server/src/main/java/org/apache/iotdb/db/mpp/common/header/HeaderConstant.java
+++
b/server/src/main/java/org/apache/iotdb/db/mpp/common/header/HeaderConstant.java
@@ -73,7 +73,8 @@ public class HeaderConstant {
public static final String COLUMN_REGION_ID = "RegionId";
public static final String COLUMN_TYPE = "Type";
public static final String COLUMN_DATANODE_ID = "DataNodeId";
- public static final String COLUMN_SLOTS = "Slots";
+ public static final String COLUMN_SERIES_SLOTS = "Series Slots";
+ public static final String COLUMN_TIME_SLOTS = "Time Slots";
// dataset header for schema statement
public static final DatasetHeader showTimeSeriesHeader;
@@ -218,7 +219,8 @@ public class HeaderConstant {
new ColumnHeader(COLUMN_TYPE, TSDataType.TEXT),
new ColumnHeader(COLUMN_STATUS, TSDataType.TEXT),
new ColumnHeader(COLUMN_STORAGE_GROUP, TSDataType.TEXT),
- new ColumnHeader(COLUMN_SLOTS, TSDataType.INT64),
+ new ColumnHeader(COLUMN_SERIES_SLOTS, TSDataType.INT64),
+ new ColumnHeader(COLUMN_TIME_SLOTS, TSDataType.INT64),
new ColumnHeader(COLUMN_DATANODE_ID, TSDataType.INT32),
new ColumnHeader(COLUMN_HOST, TSDataType.TEXT),
new ColumnHeader(COLUMN_PORT, TSDataType.INT32)),
diff --git
a/server/src/main/java/org/apache/iotdb/db/mpp/plan/execution/config/ShowRegionTask.java
b/server/src/main/java/org/apache/iotdb/db/mpp/plan/execution/config/ShowRegionTask.java
index 4171409eda..25cdb931ca 100644
---
a/server/src/main/java/org/apache/iotdb/db/mpp/plan/execution/config/ShowRegionTask.java
+++
b/server/src/main/java/org/apache/iotdb/db/mpp/plan/execution/config/ShowRegionTask.java
@@ -72,10 +72,11 @@ public class ShowRegionTask implements IConfigTask {
.writeBinary(
Binary.valueOf(regionInfo.getStatus() == null ? "" :
regionInfo.getStatus()));
builder.getColumnBuilder(3).writeBinary(Binary.valueOf(regionInfo.getStorageGroup()));
- builder.getColumnBuilder(4).writeLong(regionInfo.getSlots());
- builder.getColumnBuilder(5).writeInt(regionInfo.getDataNodeId());
-
builder.getColumnBuilder(6).writeBinary(Binary.valueOf(regionInfo.getClientRpcIp()));
- builder.getColumnBuilder(7).writeInt(regionInfo.getClientRpcPort());
+ builder.getColumnBuilder(4).writeLong(regionInfo.getSeriesSlots());
+ builder.getColumnBuilder(5).writeLong(regionInfo.getTimeSlots());
+ builder.getColumnBuilder(6).writeInt(regionInfo.getDataNodeId());
+
builder.getColumnBuilder(7).writeBinary(Binary.valueOf(regionInfo.getClientRpcIp()));
+ builder.getColumnBuilder(8).writeInt(regionInfo.getClientRpcPort());
builder.declarePosition();
}
}
diff --git a/thrift-commons/src/main/thrift/common.thrift
b/thrift-commons/src/main/thrift/common.thrift
index b0c0dc8923..c9b80527f6 100644
--- a/thrift-commons/src/main/thrift/common.thrift
+++ b/thrift-commons/src/main/thrift/common.thrift
@@ -83,8 +83,9 @@ struct TRegionInfo {
3: required i32 dataNodeId
4: required string clientRpcIp
5: required i32 clientRpcPort
- 6: required i64 slots
- 7: optional string status
+ 6: required i64 seriesSlots
+ 7: required i64 timeSlots
+ 8: optional string status
}
struct TDataNodeInfo {