public TSStatus submitAddRegionPeerTask(
      long procedureId,
      TDataNodeLocation destDataNode,
      TConsensusGroupId regionId,
      TDataNodeLocation coordinator) {
    TSStatus status;

    // Send addRegionPeer request to the selected DataNode,
    // destDataNode is where the new RegionReplica is created
    TMaintainPeerReq maintainPeerReq = new TMaintainPeerReq(regionId, destDataNode, procedureId);
    status =
        (TSStatus)
            SyncDataNodeClientPool.getInstance()
                .sendSyncRequestToDataNodeWithRetry(
                    coordinator.getInternalEndPoint(),
                    maintainPeerReq,
                    CnToDnSyncRequestType.ADD_REGION_PEER);
    LOGGER.info(
        "{}, Send action addRegionPeer finished, regionId: {}, rpcDataNode: {},  destDataNode: {}, status: {}",
        REGION_MIGRATE_PROCESS,
        regionId,
        getIdWithRpcEndpoint(coordinator),
        getIdWithRpcEndpoint(destDataNode),
        status);
    return status;
  }
Order the specific ConsensusGroup to add peer for the new RegionReplica.

<p>The add peer interface could be invoked at any DataNode who contains one of the
RegionReplica of the specified ConsensusGroup except the new one

@param destDataNode The DataNodeLocation where the new RegionReplica is created
@param regionId region id
@return TSStatus
iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/env/RegionMaintainHandler.java