diff --git a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/protocol/DatanodeDetails.java b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/protocol/DatanodeDetails.java index ec68692d24c0..fc3f8ae6fb82 100644 --- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/protocol/DatanodeDetails.java +++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/protocol/DatanodeDetails.java @@ -195,15 +195,6 @@ public String getHostName() { return hostName; } - /** - * Returns the Hostname and IP of the datanode separated by a slash. - * - * Eg: datanode001.corp/192.168.0.123 - */ - public String getHostNameAndIP() { - return getHostName() + "/" + getIpAddress(); - } - /** * Sets a DataNode Port. * @@ -503,6 +494,10 @@ public void setCurrentVersion(int currentVersion) { @Override public String toString() { + return uuidString + "(" + hostName + "/" + ipAddress + ")"; + } + + public String toDebugString() { return uuid.toString() + "{" + "ip: " + ipAddress + diff --git a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/ec/reconstruction/ECReconstructionCommandInfo.java b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/ec/reconstruction/ECReconstructionCommandInfo.java index 2851c735445f..c053a9ae9248 100644 --- a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/ec/reconstruction/ECReconstructionCommandInfo.java +++ b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/ec/reconstruction/ECReconstructionCommandInfo.java @@ -28,7 +28,6 @@ import java.util.stream.IntStream; import static java.util.Collections.unmodifiableSortedMap; -import static java.util.stream.Collectors.joining; import static java.util.stream.Collectors.toMap; /** @@ -91,14 +90,8 @@ public String toString() { + "containerID=" + containerID + ", replication=" + ecReplicationConfig.getReplication() + ", missingIndexes=" + Arrays.toString(missingContainerIndexes) - + ", sources={" + toString(sourceNodeMap) + "}" - + ", targets={" + toString(targetNodeMap) + "}}"; - } - - private String toString(SortedMap nodeMap) { - return nodeMap.entrySet().stream() - .map(e -> e.getKey() + ":" + e.getValue().getHostNameAndIP()) - .collect(joining(",")); + + ", sources=" + sourceNodeMap + + ", targets=" + targetNodeMap + "}"; } public long getTerm() { diff --git a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/protocol/commands/ReconstructECContainersCommand.java b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/protocol/commands/ReconstructECContainersCommand.java index f86fcc7a6569..f12b976c4d31 100644 --- a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/protocol/commands/ReconstructECContainersCommand.java +++ b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/protocol/commands/ReconstructECContainersCommand.java @@ -141,12 +141,10 @@ public String toString() { .append(": containerID: ").append(containerID) .append(", replicationConfig: ").append(ecReplicationConfig) .append(", sources: [").append(getSources().stream() - .map(a -> a.dnDetails.getHostNameAndIP() + .map(a -> a.dnDetails + " replicaIndex: " + a.getReplicaIndex()) .collect(Collectors.joining(", "))).append("]") - .append(", targets: [").append(getTargetDatanodes().stream() - .map(DatanodeDetails::getHostNameAndIP) - .collect(Collectors.joining(", "))).append("]") + .append(", targets: ").append(getTargetDatanodes()) .append(", missingIndexes: ").append( Arrays.toString(missingContainerIndexes)); return sb.toString(); diff --git a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/protocol/commands/ReplicateContainerCommand.java b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/protocol/commands/ReplicateContainerCommand.java index cdc2a15e9c50..3f5959a28182 100644 --- a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/protocol/commands/ReplicateContainerCommand.java +++ b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/protocol/commands/ReplicateContainerCommand.java @@ -116,10 +116,7 @@ public String toString() { sb.append(getType()); sb.append(": containerId: ").append(getContainerID()); sb.append(", replicaIndex: ").append(getReplicaIndex()); - sb.append(", sourceNodes: ["); - sb.append(sourceDatanodes.stream() - .map(DatanodeDetails::getHostNameAndIP) - .collect(Collectors.joining(", "))).append("]"); + sb.append(", sourceNodes: ").append(sourceDatanodes); return sb.toString(); } } diff --git a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/node/SCMNodeManager.java b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/node/SCMNodeManager.java index b9bc13d5a528..e96313df78ac 100644 --- a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/node/SCMNodeManager.java +++ b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/node/SCMNodeManager.java @@ -394,16 +394,16 @@ public RegisteredCommand register( addEntryToDnsToUuidMap(dnsName, datanodeDetails.getUuidString()); // Updating Node Report, as registration is successful processNodeReport(datanodeDetails, nodeReport); - LOG.info("Registered Data node : {}", datanodeDetails); + LOG.info("Registered Data node : {}", datanodeDetails.toDebugString()); scmNodeEventPublisher.fireEvent(SCMEvents.NEW_NODE, datanodeDetails); } catch (NodeAlreadyExistsException e) { if (LOG.isTraceEnabled()) { LOG.trace("Datanode is already registered. Datanode: {}", - datanodeDetails.toString()); + datanodeDetails); } } catch (NodeNotFoundException e) { LOG.error("Cannot find datanode {} from nodeStateManager", - datanodeDetails.toString()); + datanodeDetails); } } else { // Update datanode if it is registered but the ip or hostname changes @@ -543,9 +543,11 @@ protected void updateDatanodeOpState(DatanodeDetails reportedDn) if (opStateDiffers(reportedDn, scmStatus)) { if (scmContext.isLeader()) { LOG.info("Scheduling a command to update the operationalState " + - "persisted on {} as the reported value does not " + + "persisted on {} as the reported value ({}, {}) does not " + "match the value stored in SCM ({}, {})", reportedDn, + reportedDn.getPersistedOpState(), + reportedDn.getPersistedOpStateExpiryEpochSec(), scmStatus.getOperationalState(), scmStatus.getOpStateExpiryEpochSeconds()); @@ -563,9 +565,11 @@ protected void updateDatanodeOpState(DatanodeDetails reportedDn) } } else { LOG.info("Update the operationalState saved in follower SCM " + - "for {} as the reported value does not " + + "for {} as the reported value ({}, {}) does not " + "match the value stored in SCM ({}, {})", reportedDn, + reportedDn.getPersistedOpState(), + reportedDn.getPersistedOpStateExpiryEpochSec(), scmStatus.getOperationalState(), scmStatus.getOpStateExpiryEpochSeconds());