From 29d122f7ef225aec7b138ac2de33124852be6556 Mon Sep 17 00:00:00 2001 From: Caideyipi <87789683+Caideyipi@users.noreply.github.com> Date: Mon, 8 Sep 2025 14:45:08 +0800 Subject: [PATCH] Changed the default MQTT handler size to 1/2 number of processors & Fixed some default parameters when core number is 1 (#16363) * fix * fix --- .../src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java | 2 +- .../main/java/org/apache/iotdb/db/conf/IoTDBDescriptor.java | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java index 3d2b6b6fa5e03..2a85be595c311 100644 --- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java +++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java @@ -109,7 +109,7 @@ public class IoTDBConfig { private int mqttPort = 1883; /** The handler pool size for handing the mqtt messages. */ - private int mqttHandlerPoolSize = 1; + private int mqttHandlerPoolSize = Math.max(1, Runtime.getRuntime().availableProcessors() >> 1); /** The mqtt message payload formatter. */ private String mqttPayloadFormatter = "json"; diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBDescriptor.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBDescriptor.java index c79c67a409e31..bfc47bf58e033 100644 --- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBDescriptor.java +++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/conf/IoTDBDescriptor.java @@ -586,7 +586,7 @@ public void loadProperties(TrimProperties properties) throws BadNodeUrlException "degree_of_query_parallelism", Integer.toString(conf.getDegreeOfParallelism())))); if (conf.getDegreeOfParallelism() <= 0) { - conf.setDegreeOfParallelism(Runtime.getRuntime().availableProcessors() / 2); + conf.setDegreeOfParallelism(Math.max(1, Runtime.getRuntime().availableProcessors() / 2)); } conf.setMergeThresholdOfExplainAnalyze( @@ -2730,7 +2730,7 @@ private void loadCQProps(TrimProperties properties) { "continuous_query_thread_num", Integer.toString(conf.getContinuousQueryThreadNum())))); if (conf.getContinuousQueryThreadNum() <= 0) { - conf.setContinuousQueryThreadNum(Runtime.getRuntime().availableProcessors() / 2); + conf.setContinuousQueryThreadNum(Math.max(1, Runtime.getRuntime().availableProcessors() / 2)); } conf.setContinuousQueryMinimumEveryInterval(