This is an automated email from the ASF dual-hosted git repository. caogaofei pushed a commit to branch beyyes/fix_procedure_bug in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit c659d5aa486ac17fc99c56b4082fd8c7cc97938b Author: Beyyes <[email protected]> AuthorDate: Wed Sep 7 20:39:15 2022 +0800 perfect logs in RegionMigrateService --- .../apache/iotdb/confignode/manager/NodeManager.java | 4 ++-- .../iotdb/confignode/manager/ProcedureManager.java | 5 +++-- .../procedure/env/DataNodeRemoveHandler.java | 18 ++++++++++++------ .../procedure/impl/AbstractNodeProcedure.java | 6 +++--- .../procedure/impl/RegionMigrateProcedure.java | 4 ++-- .../apache/iotdb/db/service/RegionMigrateService.java | 14 +++++--------- 6 files changed, 27 insertions(+), 24 deletions(-) diff --git a/confignode/src/main/java/org/apache/iotdb/confignode/manager/NodeManager.java b/confignode/src/main/java/org/apache/iotdb/confignode/manager/NodeManager.java index f51b91cf6e..62d1a968c8 100644 --- a/confignode/src/main/java/org/apache/iotdb/confignode/manager/NodeManager.java +++ b/confignode/src/main/java/org/apache/iotdb/confignode/manager/NodeManager.java @@ -166,7 +166,7 @@ public class NodeManager { * DATANODE_NOT_EXIST when some datanode not exist. */ public DataSet removeDataNode(RemoveDataNodePlan removeDataNodePlan) { - LOGGER.info("Node manager start to remove DataNode {}", removeDataNodePlan); + LOGGER.info("NodeManager start to remove DataNode {}", removeDataNodePlan); DataNodeRemoveHandler dataNodeRemoveHandler = new DataNodeRemoveHandler((ConfigManager) configManager); @@ -193,7 +193,7 @@ public class NodeManager { } dataSet.setStatus(status); - LOGGER.info("Node manager finished to remove DataNode {}", removeDataNodePlan); + LOGGER.info("NodeManager finished to remove DataNode {}", removeDataNodePlan); return dataSet; } diff --git a/confignode/src/main/java/org/apache/iotdb/confignode/manager/ProcedureManager.java b/confignode/src/main/java/org/apache/iotdb/confignode/manager/ProcedureManager.java index 61027c1343..6dfe496fad 100644 --- a/confignode/src/main/java/org/apache/iotdb/confignode/manager/ProcedureManager.java +++ b/confignode/src/main/java/org/apache/iotdb/confignode/manager/ProcedureManager.java @@ -260,7 +260,8 @@ public class ProcedureManager { } public void reportRegionMigrateResult(TRegionMigrateResultReportReq req) { - LOGGER.info("receive DataNode region:{} migrate result:{}", req.getRegionId(), req); + LOGGER.info("Receive DataNode region: {} migrate result: {}", req.getRegionId(), req); + this.executor .getProcedures() .values() @@ -272,7 +273,7 @@ public class ProcedureManager { regionMigrateProcedure.notifyTheRegionMigrateFinished(req); } else { LOGGER.warn( - "DataNode report region:{} is not equals ConfigNode send region:{}", + "DataNode report region: {} is not equals ConfigNode send region: {}", req.getRegionId(), regionMigrateProcedure.getConsensusGroupId()); } diff --git a/confignode/src/main/java/org/apache/iotdb/confignode/procedure/env/DataNodeRemoveHandler.java b/confignode/src/main/java/org/apache/iotdb/confignode/procedure/env/DataNodeRemoveHandler.java index e20f691d49..51e0b3363a 100644 --- a/confignode/src/main/java/org/apache/iotdb/confignode/procedure/env/DataNodeRemoveHandler.java +++ b/confignode/src/main/java/org/apache/iotdb/confignode/procedure/env/DataNodeRemoveHandler.java @@ -86,7 +86,8 @@ public class DataNodeRemoveHandler { */ public TSStatus broadcastDisableDataNode(TDataNodeLocation disabledDataNode) { LOGGER.info( - "DataNodeRemoveService start send disable the Data Node to cluster, {}", disabledDataNode); + "DataNodeRemoveService start send disable the Data Node to cluster, {}", + getIdWithRpcEndpoint(disabledDataNode)); TSStatus status = new TSStatus(TSStatusCode.SUCCESS_STATUS.getStatusCode()); List<TEndPoint> otherOnlineDataNodes = configManager.getNodeManager().filterDataNodeThroughStatus(NodeStatus.Running).stream() @@ -107,7 +108,7 @@ public class DataNodeRemoveHandler { } LOGGER.info( "DataNodeRemoveService finished send disable the Data Node to cluster, {}", - disabledDataNode); + getIdWithRpcEndpoint(disabledDataNode)); status.setMessage("Succeed disable the Data Node from cluster"); return status; } @@ -172,9 +173,9 @@ public class DataNodeRemoveHandler { maintainPeerReq, DataNodeRequestType.ADD_REGION_PEER); LOGGER.info( - "Send region {} add peer action to {}, wait it finished", + "Send action addRegionPeer, wait it finished, regionId: {}, dataNode: {}", regionId, - selectedDataNode.get().getInternalEndPoint()); + getIdWithRpcEndpoint(selectedDataNode.get())); return status; } @@ -339,10 +340,10 @@ public class DataNodeRemoveHandler { req, DataNodeRequestType.CREATE_NEW_REGION_PEER); - LOGGER.info("Send create peer for regionId {} on data node {}", regionId, destDataNode); + LOGGER.info("Send action createNewRegionPeer, regionId: {}, dataNode: {}", regionId, destDataNode); if (isFailed(status)) { LOGGER.error( - "Send create peer for regionId {} on data node {}, result: {}", + "Send action createNewRegionPeer, regionId: {}, dataNode: {}, result: {}", regionId, destDataNode, status); @@ -492,4 +493,9 @@ public class DataNodeRemoveHandler { // TODO replace findAny() by select the low load node. return regionReplicaNodes.stream().filter(e -> !e.equals(filterLocation)).findAny(); } + + private String getIdWithRpcEndpoint(TDataNodeLocation location) { + return String.format("dataNodeId: %s, clientRpcEndPoint: %s", + location.getDataNodeId(), location.getClientRpcEndPoint()); + } } diff --git a/confignode/src/main/java/org/apache/iotdb/confignode/procedure/impl/AbstractNodeProcedure.java b/confignode/src/main/java/org/apache/iotdb/confignode/procedure/impl/AbstractNodeProcedure.java index 15a256143e..1bd5565dc4 100644 --- a/confignode/src/main/java/org/apache/iotdb/confignode/procedure/impl/AbstractNodeProcedure.java +++ b/confignode/src/main/java/org/apache/iotdb/confignode/procedure/impl/AbstractNodeProcedure.java @@ -36,11 +36,11 @@ public abstract class AbstractNodeProcedure<TState> configNodeProcedureEnv.getSchedulerLock().lock(); try { if (configNodeProcedureEnv.getNodeLock().tryLock(this)) { - LOG.info("{} acquire lock.", getProcId()); + LOG.info("procedureId {} acquire lock.", getProcId()); return ProcedureLockState.LOCK_ACQUIRED; } configNodeProcedureEnv.getNodeLock().waitProcedure(this); - LOG.info("{} wait for lock.", getProcId()); + LOG.info("procedureId {} wait for lock.", getProcId()); return ProcedureLockState.LOCK_EVENT_WAIT; } finally { configNodeProcedureEnv.getSchedulerLock().unlock(); @@ -51,7 +51,7 @@ public abstract class AbstractNodeProcedure<TState> protected void releaseLock(ConfigNodeProcedureEnv configNodeProcedureEnv) { configNodeProcedureEnv.getSchedulerLock().lock(); try { - LOG.info("{} release lock.", getProcId()); + LOG.info("procedureId {} release lock.", getProcId()); if (configNodeProcedureEnv.getNodeLock().releaseLock(this)) { configNodeProcedureEnv .getNodeLock() diff --git a/confignode/src/main/java/org/apache/iotdb/confignode/procedure/impl/RegionMigrateProcedure.java b/confignode/src/main/java/org/apache/iotdb/confignode/procedure/impl/RegionMigrateProcedure.java index 4f8d6745f9..e00a4753b8 100644 --- a/confignode/src/main/java/org/apache/iotdb/confignode/procedure/impl/RegionMigrateProcedure.java +++ b/confignode/src/main/java/org/apache/iotdb/confignode/procedure/impl/RegionMigrateProcedure.java @@ -88,7 +88,7 @@ public class RegionMigrateProcedure tsStatus = env.getDataNodeRemoveHandler().addRegionPeer(destDataNode, consensusGroupId); if (tsStatus.getCode() == TSStatusCode.SUCCESS_STATUS.getStatusCode()) { waitForOneMigrationStepFinished(consensusGroupId); - LOG.info("Wait for region {} add peer finished", consensusGroupId); + LOG.info("Wait for region add peer finished, regionId: {}", consensusGroupId); } else { throw new ProcedureException("Failed to add region peer"); } @@ -253,7 +253,7 @@ public class RegionMigrateProcedure regionMigrateLock.notify(); } LOG.info( - "notified after DataNode reported region {} migrate result:{} ", req.getRegionId(), req); + "Notified after DataNode reported region {} migrate result: {} ", req.getRegionId(), req); } public TConsensusGroupId getConsensusGroupId() { diff --git a/server/src/main/java/org/apache/iotdb/db/service/RegionMigrateService.java b/server/src/main/java/org/apache/iotdb/db/service/RegionMigrateService.java index 6e91124e15..809da5b01e 100644 --- a/server/src/main/java/org/apache/iotdb/db/service/RegionMigrateService.java +++ b/server/src/main/java/org/apache/iotdb/db/service/RegionMigrateService.java @@ -277,15 +277,10 @@ public class RegionMigrateService implements IService { } catch (Throwable e) { addPeerSucceed = false; taskLogger.error( - "add new peer {} for region {} error, retry times: {}", newPeerNode, regionId, i, e); + "Add new peer {} for region {} error, retry times: {}", newPeerNode, regionId, i, e); status.setCode(TSStatusCode.MIGRATE_REGION_ERROR.getStatusCode()); - status.setMessage( - "add peer " - + newPeerNode - + " for region: " - + regionId - + " error, exception: " - + e.getMessage()); + status.setMessage(String.format("Add peer for region error, peerId: %s, regionId: %s, errorMessage: %s", + newPeerNode, regionId, e.getMessage())); } if (addPeerSucceed && resp != null && resp.isSuccess()) { break; @@ -295,7 +290,8 @@ public class RegionMigrateService implements IService { taskLogger.error( "add new peer {} for region {} failed, resp: {}", newPeerNode, regionId, resp); status.setCode(TSStatusCode.MIGRATE_REGION_ERROR.getStatusCode()); - status.setMessage("add new peer " + newPeerNode + " for region " + regionId + "failed"); + status.setMessage(String.format("Add peer for region error, peerId: %s, regionId: %s, resp: %s", + newPeerNode, regionId, resp)); return status; }
