You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@iotdb.apache.org by "QiangShaowei (Jira)" <ji...@apache.org> on 2023/09/21 09:11:00 UTC

[jira] [Created] (IOTDB-6168) ConfigNode register retry logic does not worked

QiangShaowei created IOTDB-6168:
-----------------------------------

             Summary: ConfigNode register retry logic does not worked 
                 Key: IOTDB-6168
                 URL: https://issues.apache.org/jira/browse/IOTDB-6168
             Project: Apache IoTDB
          Issue Type: Bug
            Reporter: QiangShaowei


ConfigNode register itself to cluster has retry logic, but does not worked.
{code:java}
ConfigNode.java

for (int retry = 0; retry < STARTUP_RETRY_NUM; retry++) {
  TSStatus status;
  TConfigNodeRegisterResp resp = null;
  Object obj =
      SyncConfigNodeClientPool.getInstance()
          .sendSyncRequestToConfigNodeWithRetry(
              targetConfigNode, req, ConfigNodeRequestType.REGISTER_CONFIG_NODE); 
....{code}
There exist two retry logic: One is in ConfigNode.java for loop, another is in SyncConfigNodeClientPool.getInstance() .sendSyncRequestToConfigNodeWithRetry

but when the second retry reach max times, the for loop retry logic in ConfigNode does not worked.

 

The reason is for loop does not check TSStatusCode.INTERNAL_REQUEST_RETRY_ERROR from SyncConfigNodeClientPool, so throw StartupException abort the for loop



--
This message was sent by Atlassian Jira
(v8.20.10#820010)