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)

Reply via email to