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

hui pushed a commit to branch lmh/FixIntoOperator1.0
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit e3582f766d0e596c37247ba0e2dff961329c8ba1
Author: Minghui Liu <[email protected]>
AuthorDate: Wed Nov 30 19:41:45 2022 +0800

    add config
---
 docs/UserGuide/Reference/Common-Config-Manual.md         |  9 +++++++++
 docs/zh/UserGuide/Reference/Common-Config-Manual.md      |  9 +++++++++
 .../src/assembly/resources/conf/iotdb-common.properties  |  4 ++++
 .../main/java/org/apache/iotdb/db/conf/IoTDBConfig.java  | 16 ++++++----------
 .../java/org/apache/iotdb/db/conf/IoTDBDescriptor.java   | 11 +++++------
 .../mpp/execution/fragment/FragmentInstanceManager.java  |  2 +-
 6 files changed, 34 insertions(+), 17 deletions(-)

diff --git a/docs/UserGuide/Reference/Common-Config-Manual.md 
b/docs/UserGuide/Reference/Common-Config-Manual.md
index 504824ccdc..c75c4ac14e 100644
--- a/docs/UserGuide/Reference/Common-Config-Manual.md
+++ b/docs/UserGuide/Reference/Common-Config-Manual.md
@@ -1384,6 +1384,15 @@ Different configuration parameters take effect in the 
following three ways:
 |   Default   | 10000                                                        |
 |  Effective  | hot-load                                                      |
 
+* into\_operation\_execution\_thread\_count
+
+|    Name     | into\_operation\_execution\_thread\_count                     |
+| :---------: | :------------------------------------------------------------ |
+| Description | The number of threads in the thread pool that execute 
insert-tablet tasks |
+|    Type     | int32                                                         |
+|   Default   | 2                                                             |
+|  Effective  | After restarting system                                       |
+
 ### Continuous Query
 
 * continuous\_query\_execution\_thread
diff --git a/docs/zh/UserGuide/Reference/Common-Config-Manual.md 
b/docs/zh/UserGuide/Reference/Common-Config-Manual.md
index 3fa5556310..e842f67bef 100644
--- a/docs/zh/UserGuide/Reference/Common-Config-Manual.md
+++ b/docs/zh/UserGuide/Reference/Common-Config-Manual.md
@@ -1428,6 +1428,15 @@ IoTDB ConfigNode 和 DataNode 的公共配置参数位于 `conf` 目录下。
 |    默认值    | 10000                                                        |
 | 改后生效方式 | 热加载                                                     |
 
+* into\_operation\_execution\_thread\_count
+
+|     名字     | into\_operation\_execution\_thread\_count |
+| :---------: | :---------------------------------------- |
+|     描述     | SELECT INTO 中执行写入任务的线程池的线程数      |
+|     类型     | int32                                     |
+|    默认值    | 2                                         |
+| 改后生效方式  | 重启服务生效                                 |
+
 ### 连续查询配置
 
 * continuous\_query\_submit\_thread\_count
diff --git a/node-commons/src/assembly/resources/conf/iotdb-common.properties 
b/node-commons/src/assembly/resources/conf/iotdb-common.properties
index 930ab46ba2..b6689c3c1d 100644
--- a/node-commons/src/assembly/resources/conf/iotdb-common.properties
+++ b/node-commons/src/assembly/resources/conf/iotdb-common.properties
@@ -877,6 +877,10 @@
 # Datatype: int
 # select_into_insert_tablet_plan_row_limit=10000
 
+# The number of threads in the thread pool that execute insert-tablet tasks
+# Datatype: int
+# into_operation_execution_thread_count=2
+
 ####################
 ### Continuous Query Configuration
 ####################
diff --git a/server/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java 
b/server/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java
index 92abf21537..99dcf1b865 100644
--- a/server/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java
+++ b/server/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java
@@ -685,12 +685,8 @@ public class IoTDBConfig {
    */
   private int selectIntoInsertTabletPlanRowLimit = 10000;
 
-  /**
-   * How many thread will be set up to execute into operation. When <= 0, use 
max(1, CPU core number
-   * / 2).
-   */
-  private int intoOperationSubmitThreadCount =
-      Math.max(1, Runtime.getRuntime().availableProcessors() / 2);
+  /** The number of threads in the thread pool that execute insert-tablet 
tasks. */
+  private int intoOperationExecutionThreadCount = 2;
 
   /** Default TSfile storage is in local file system */
   private FSType tsFileStorageFs = FSType.LOCAL;
@@ -1909,12 +1905,12 @@ public class IoTDBConfig {
     return selectIntoInsertTabletPlanRowLimit;
   }
 
-  public int getIntoOperationSubmitThreadCount() {
-    return intoOperationSubmitThreadCount;
+  public int getIntoOperationExecutionThreadCount() {
+    return intoOperationExecutionThreadCount;
   }
 
-  public void setIntoOperationSubmitThreadCount(int 
intoOperationSubmitThreadCount) {
-    this.intoOperationSubmitThreadCount = intoOperationSubmitThreadCount;
+  public void setIntoOperationExecutionThreadCount(int 
intoOperationExecutionThreadCount) {
+    this.intoOperationExecutionThreadCount = intoOperationExecutionThreadCount;
   }
 
   public int getCompactionWriteThroughputMbPerSec() {
diff --git a/server/src/main/java/org/apache/iotdb/db/conf/IoTDBDescriptor.java 
b/server/src/main/java/org/apache/iotdb/db/conf/IoTDBDescriptor.java
index 9bab834045..7a25d6d21f 100644
--- a/server/src/main/java/org/apache/iotdb/db/conf/IoTDBDescriptor.java
+++ b/server/src/main/java/org/apache/iotdb/db/conf/IoTDBDescriptor.java
@@ -903,14 +903,13 @@ public class IoTDBDescriptor {
             properties.getProperty(
                 "select_into_insert_tablet_plan_row_limit",
                 
String.valueOf(conf.getSelectIntoInsertTabletPlanRowLimit()))));
-    conf.setIntoOperationSubmitThreadCount(
+    conf.setIntoOperationExecutionThreadCount(
         Integer.parseInt(
             properties.getProperty(
-                "into_operation_submit_thread_count",
-                String.valueOf(conf.getIntoOperationSubmitThreadCount()))));
-    if (conf.getIntoOperationSubmitThreadCount() <= 0) {
-      conf.setIntoOperationSubmitThreadCount(
-          Math.max(1, Runtime.getRuntime().availableProcessors() / 2));
+                "into_operation_execution_thread_count",
+                String.valueOf(conf.getIntoOperationExecutionThreadCount()))));
+    if (conf.getIntoOperationExecutionThreadCount() <= 0) {
+      conf.setIntoOperationExecutionThreadCount(2);
     }
 
     conf.setExtPipeDir(properties.getProperty("ext_pipe_dir", 
conf.getExtPipeDir()).trim());
diff --git 
a/server/src/main/java/org/apache/iotdb/db/mpp/execution/fragment/FragmentInstanceManager.java
 
b/server/src/main/java/org/apache/iotdb/db/mpp/execution/fragment/FragmentInstanceManager.java
index 5114d2dcbb..1bc2444bb1 100644
--- 
a/server/src/main/java/org/apache/iotdb/db/mpp/execution/fragment/FragmentInstanceManager.java
+++ 
b/server/src/main/java/org/apache/iotdb/db/mpp/execution/fragment/FragmentInstanceManager.java
@@ -83,7 +83,7 @@ public class FragmentInstanceManager {
         IoTDBThreadPoolFactory.newFixedThreadPool(4, "instance-notification");
     this.intoOperationExecutor =
         IoTDBThreadPoolFactory.newFixedThreadPool(
-            
IoTDBDescriptor.getInstance().getConfig().getIntoOperationSubmitThreadCount(),
+            
IoTDBDescriptor.getInstance().getConfig().getIntoOperationExecutionThreadCount(),
             "into-operation-executor");
 
     this.infoCacheTime = new Duration(5, TimeUnit.MINUTES);

Reply via email to