This is an automated email from the ASF dual-hosted git repository. hxd pushed a commit to branch change_rpc_port in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 770793f6d442f95f428f4a93ea4252d3b6f93903 Author: xiangdong huang <[email protected]> AuthorDate: Tue Dec 22 21:18:31 2020 +0800 change some log; fix iotdb rpc port error --- .../main/java/org/apache/iotdb/cluster/ClusterMain.java | 13 ++++++++----- .../java/org/apache/iotdb/cluster/server/NodeReport.java | 2 +- .../iotdb/cluster/server/member/MetaGroupMember.java | 4 ++-- .../apache/iotdb/cluster/server/member/RaftMember.java | 6 +++++- .../main/java/org/apache/iotdb/db/conf/IoTDBConfig.java | 15 +++++++++++++++ .../src/main/java/org/apache/iotdb/db/service/IoTDB.java | 6 +++++- 6 files changed, 36 insertions(+), 10 deletions(-) diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/ClusterMain.java b/cluster/src/main/java/org/apache/iotdb/cluster/ClusterMain.java index 39446db..bf6b504 100644 --- a/cluster/src/main/java/org/apache/iotdb/cluster/ClusterMain.java +++ b/cluster/src/main/java/org/apache/iotdb/cluster/ClusterMain.java @@ -99,14 +99,10 @@ public class ClusterMain { ); return; } - String mode = args[0]; - if (args.length > 1) { - String[] params = Arrays.copyOfRange(args, 1, args.length); - replaceDefaultProps(params); - } // init server's configuration first, because the cluster configuration may read settings from // the server's configuration. + IoTDBDescriptor.getInstance().getConfig().setEnableRPCService(false); IoTDBDescriptor.getInstance().getConfig().setSyncEnable(false); IoTDBDescriptor.getInstance().getConfig().setAutoCreateSchemaEnabled(false); @@ -115,6 +111,12 @@ public class ClusterMain { return; } + String mode = args[0]; + if (args.length > 1) { + String[] params = Arrays.copyOfRange(args, 1, args.length); + replaceDefaultProps(params); + } + logger.info("Running mode {}", mode); if (MODE_START.equals(mode)) { try { @@ -291,6 +293,7 @@ public class ClusterMain { if (commandLine.hasOption(OPTION_DEBUG_RPC_PORT)) { IoTDBDescriptor.getInstance().getConfig().setRpcPort(Integer.parseInt(commandLine.getOptionValue( OPTION_DEBUG_RPC_PORT))); + IoTDBDescriptor.getInstance().getConfig().setEnableRPCService(true); logger.debug("replace local cluster (single node) rpc port with={}", commandLine.getOptionValue( OPTION_DEBUG_RPC_PORT)); } diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/server/NodeReport.java b/cluster/src/main/java/org/apache/iotdb/cluster/server/NodeReport.java index e175248..7e4fce1 100644 --- a/cluster/src/main/java/org/apache/iotdb/cluster/server/NodeReport.java +++ b/cluster/src/main/java/org/apache/iotdb/cluster/server/NodeReport.java @@ -125,7 +125,7 @@ public class NodeReport { ", writeBytes=" + writeBytes + "/" + writeCompressedBytes + "(" + writeCompressionRatio + ")"; } - return "MetaMemberReport{" + + return "MetaMemberReport {\n" + "character=" + character + ", Leader=" + leader + ", term=" + term + diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/server/member/MetaGroupMember.java b/cluster/src/main/java/org/apache/iotdb/cluster/server/member/MetaGroupMember.java index 0d7183f..809061f 100644 --- a/cluster/src/main/java/org/apache/iotdb/cluster/server/member/MetaGroupMember.java +++ b/cluster/src/main/java/org/apache/iotdb/cluster/server/member/MetaGroupMember.java @@ -184,7 +184,7 @@ public class MetaGroupMember extends RaftMember { * every "REPORT_INTERVAL_SEC" seconds, a reporter thread will print the status of all raft * members in this node */ - private static final int REPORT_INTERVAL_SEC = 10; + private static final int REPORT_INTERVAL_SEC = 100; /** * how many times is a data record replicated, also the number of nodes in a data group */ @@ -473,7 +473,7 @@ public class MetaGroupMember extends RaftMember { try { if (logger.isInfoEnabled()) { NodeReport report = genNodeReport(); - logger.info(report.toString()); + logger.debug(report.toString()); } } catch (Exception e) { logger.error("{} exception occurred when generating node report", name, e); diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/server/member/RaftMember.java b/cluster/src/main/java/org/apache/iotdb/cluster/server/member/RaftMember.java index 14271dc..6e3d70a 100644 --- a/cluster/src/main/java/org/apache/iotdb/cluster/server/member/RaftMember.java +++ b/cluster/src/main/java/org/apache/iotdb/cluster/server/member/RaftMember.java @@ -1275,6 +1275,7 @@ public abstract class RaftMember { } AsyncClient client = null; + IOException lastException = null; for (int i = 0; i < MAX_RETRY_TIMES_FOR_GET_CLIENT; i++) { try { client = pool.getClient(node); @@ -1287,9 +1288,12 @@ public abstract class RaftMember { Thread.currentThread().interrupt(); return null; } catch (IOException e) { - logger.warn("{} cannot connect to node {}", name, node, e); + lastException = e; } } + if (logger.isDebugEnabled() && client == null && lastException != null) { + logger.debug("{} cannot connect to node {}", name, node, lastException); + } return client; } 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 53e3d74..c93e301 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 @@ -794,6 +794,13 @@ public class IoTDBConfig { */ private boolean debugState = false; + /** + * whether enable the rpc service. This parameter has no a corresponding field + * in the iotdb-engine.properties + */ + private boolean enableRPCService = true; + + public IoTDBConfig() { // empty constructor } @@ -2122,4 +2129,12 @@ public class IoTDBConfig { public void setMlogBufferSize(int mlogBufferSize) { this.mlogBufferSize = mlogBufferSize; } + + public boolean isEnableRPCService() { + return enableRPCService; + } + + public void setEnableRPCService(boolean enableRPCService) { + this.enableRPCService = enableRPCService; + } } diff --git a/server/src/main/java/org/apache/iotdb/db/service/IoTDB.java b/server/src/main/java/org/apache/iotdb/db/service/IoTDB.java index c6c2535..c07180e 100644 --- a/server/src/main/java/org/apache/iotdb/db/service/IoTDB.java +++ b/server/src/main/java/org/apache/iotdb/db/service/IoTDB.java @@ -104,7 +104,11 @@ public class IoTDB implements IoTDBMBean { JMXService.registerMBean(getInstance(), mbeanName); registerManager.register(StorageEngine.getInstance()); - registerManager.register(RPCService.getInstance()); + //in cluster mode, RPC service is not enabled. + if (IoTDBDescriptor.getInstance().getConfig().isEnableRPCService()) { + registerManager.register(RPCService.getInstance()); + } + if (IoTDBDescriptor.getInstance().getConfig().isEnableMetricService()) { registerManager.register(MetricsService.getInstance()); }
