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

caogaofei pushed a commit to branch rel/1.0
in repository https://gitbox.apache.org/repos/asf/iotdb.git


The following commit(s) were added to refs/heads/rel/1.0 by this push:
     new 1e3665193f [To rel/1.0] add IT for IoTDBCustomRegionGroupExtension 
(#8264)
1e3665193f is described below

commit 1e3665193f87e3a06a7e839beb4bb327a7eb42f2
Author: Beyyes <[email protected]>
AuthorDate: Thu Dec 1 17:47:55 2022 +0800

    [To rel/1.0] add IT for IoTDBCustomRegionGroupExtension (#8264)
---
 .../iotdb/confignode/conf/ConfigNodeConfig.java    |  2 +-
 .../IoTDBCustomRegionGroupExtensionIT.java         | 39 ++++++++++++++++++----
 .../iotdb/commons/service/StartupChecks.java       |  2 +-
 3 files changed, 34 insertions(+), 9 deletions(-)

diff --git 
a/confignode/src/main/java/org/apache/iotdb/confignode/conf/ConfigNodeConfig.java
 
b/confignode/src/main/java/org/apache/iotdb/confignode/conf/ConfigNodeConfig.java
index 127a2c3680..6f6fe727f8 100644
--- 
a/confignode/src/main/java/org/apache/iotdb/confignode/conf/ConfigNodeConfig.java
+++ 
b/confignode/src/main/java/org/apache/iotdb/confignode/conf/ConfigNodeConfig.java
@@ -78,7 +78,7 @@ public class ConfigNodeConfig {
 
   /** The policy of extension SchemaRegionGroup for each Database. */
   private RegionGroupExtensionPolicy schemaRegionGroupExtensionPolicy =
-      RegionGroupExtensionPolicy.CUSTOM;
+      RegionGroupExtensionPolicy.AUTO;
 
   /** The number of SchemaRegionGroups for each Database when using CUSTOM 
extension policy */
   private int schemaRegionGroupPerDatabase = 1;
diff --git 
a/integration-test/src/test/java/org/apache/iotdb/confignode/it/partition/IoTDBCustomRegionGroupExtensionIT.java
 
b/integration-test/src/test/java/org/apache/iotdb/confignode/it/partition/IoTDBCustomRegionGroupExtensionIT.java
index 6f316a8a5b..effb799fbc 100644
--- 
a/integration-test/src/test/java/org/apache/iotdb/confignode/it/partition/IoTDBCustomRegionGroupExtensionIT.java
+++ 
b/integration-test/src/test/java/org/apache/iotdb/confignode/it/partition/IoTDBCustomRegionGroupExtensionIT.java
@@ -18,12 +18,16 @@
  */
 package org.apache.iotdb.confignode.it.partition;
 
+import org.apache.iotdb.common.rpc.thrift.TConsensusGroupType;
 import org.apache.iotdb.common.rpc.thrift.TSStatus;
 import org.apache.iotdb.common.rpc.thrift.TSeriesPartitionSlot;
 import org.apache.iotdb.commons.client.sync.SyncConfigNodeIServiceClient;
+import org.apache.iotdb.commons.exception.IllegalPathException;
 import org.apache.iotdb.confignode.it.utils.ConfigNodeTestUtils;
 import org.apache.iotdb.confignode.rpc.thrift.TDataPartitionReq;
 import org.apache.iotdb.confignode.rpc.thrift.TDataPartitionTableResp;
+import org.apache.iotdb.confignode.rpc.thrift.TSchemaPartitionReq;
+import org.apache.iotdb.confignode.rpc.thrift.TSchemaPartitionTableResp;
 import org.apache.iotdb.confignode.rpc.thrift.TSetStorageGroupReq;
 import org.apache.iotdb.confignode.rpc.thrift.TShowRegionReq;
 import org.apache.iotdb.confignode.rpc.thrift.TShowRegionResp;
@@ -46,9 +50,12 @@ import org.junit.experimental.categories.Category;
 import org.junit.runner.RunWith;
 
 import java.io.IOException;
+import java.nio.ByteBuffer;
 import java.util.Map;
 import java.util.concurrent.atomic.AtomicInteger;
 
+import static 
org.apache.iotdb.confignode.it.utils.ConfigNodeTestUtils.generatePatternTreeBuffer;
+
 @RunWith(IoTDBTestRunner.class)
 @Category({ClusterIT.class})
 public class IoTDBCustomRegionGroupExtensionIT {
@@ -67,7 +74,7 @@ public class IoTDBCustomRegionGroupExtensionIT {
   private static int originalSchemaRegionGroupPerDatabase;
   private static final int testSchemaRegionGroupPerDatabase = 2;
   private static int originalDataRegionGroupPerDatabase;
-  private static final int testDataRegionGroupPerDatabase = 2;
+  private static final int testDataRegionGroupPerDatabase = 3;
 
   private static int originalSchemaReplicationFactor;
   private static int originalDataReplicationFactor;
@@ -124,8 +131,8 @@ public class IoTDBCustomRegionGroupExtensionIT {
   }
 
   @Test
-  public void testCustomDataRegionGroupExtensionPolicy()
-      throws IOException, InterruptedException, TException {
+  public void testCustomRegionGroupExtensionPolicy()
+      throws IOException, InterruptedException, TException, 
IllegalPathException {
     try (SyncConfigNodeIServiceClient client =
         (SyncConfigNodeIServiceClient) 
EnvFactory.getEnv().getLeaderConfigNodeConnection()) {
 
@@ -147,21 +154,39 @@ public class IoTDBCustomRegionGroupExtensionIT {
             TSStatusCode.SUCCESS_STATUS.getStatusCode(),
             dataPartitionTableResp.getStatus().getCode());
 
+        ByteBuffer patternTree = generatePatternTreeBuffer(new String[] {curSg 
+ ".d1.s1"});
+        TSchemaPartitionReq schemaPartitionReq = new 
TSchemaPartitionReq(patternTree);
+        TSchemaPartitionTableResp schemaPartitionTableResp =
+            client.getOrCreateSchemaPartitionTable(schemaPartitionReq);
+        Assert.assertEquals(
+            TSStatusCode.SUCCESS_STATUS.getStatusCode(),
+            schemaPartitionTableResp.getStatus().getCode());
+
         /* Check the number of DataRegionGroups */
         TShowRegionResp showRegionReq = client.showRegion(new 
TShowRegionReq());
         Assert.assertEquals(
             TSStatusCode.SUCCESS_STATUS.getStatusCode(), 
showRegionReq.getStatus().getCode());
-        AtomicInteger regionCount = new AtomicInteger(0);
+        AtomicInteger dataRegionCount = new AtomicInteger(0);
+        AtomicInteger schemaRegionCount = new AtomicInteger(0);
         showRegionReq
             .getRegionInfoList()
             .forEach(
                 regionInfo -> {
-                  if (regionInfo.getStorageGroup().equals(curSg)) {
-                    regionCount.getAndIncrement();
+                  if (regionInfo.getStorageGroup().equals(curSg)
+                      && TConsensusGroupType.DataRegion.equals(
+                          regionInfo.getConsensusGroupId().getType())) {
+                    dataRegionCount.getAndIncrement();
+                  }
+                  if (regionInfo.getStorageGroup().equals(curSg)
+                      && TConsensusGroupType.SchemaRegion.equals(
+                          regionInfo.getConsensusGroupId().getType())) {
+                    schemaRegionCount.getAndIncrement();
                   }
                 });
         Assert.assertEquals(
-            testDataRegionGroupPerDatabase * testReplicationFactor, 
regionCount.get());
+            testDataRegionGroupPerDatabase * testReplicationFactor, 
dataRegionCount.get());
+        Assert.assertEquals(
+            testSchemaRegionGroupPerDatabase * testReplicationFactor, 
schemaRegionCount.get());
       }
     }
   }
diff --git 
a/node-commons/src/main/java/org/apache/iotdb/commons/service/StartupChecks.java
 
b/node-commons/src/main/java/org/apache/iotdb/commons/service/StartupChecks.java
index 17c898a47d..23e9d255d3 100644
--- 
a/node-commons/src/main/java/org/apache/iotdb/commons/service/StartupChecks.java
+++ 
b/node-commons/src/main/java/org/apache/iotdb/commons/service/StartupChecks.java
@@ -37,7 +37,7 @@ public class StartupChecks {
         if (version < IoTDBConstant.MIN_SUPPORTED_JDK_VERSION) {
           throw new StartupException(
               String.format(
-                  "Requires JDK version >= %d, current version is %d",
+                  "Requires JDK version >= %d, current version is %d.",
                   IoTDBConstant.MIN_SUPPORTED_JDK_VERSION, version));
         } else {
           logger.info("JDK version is {}.", version);

Reply via email to