HDFS-17644:Add log when a node selection is rejected by BPP UpgradeDomain (#7109)
Some checks failed
website / build (push) Has been cancelled

This commit is contained in:
Lei Yang 2024-10-26 02:29:43 -07:00 committed by GitHub
parent 0b3755347c
commit eb1e30395b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 7 additions and 3 deletions

View File

@ -80,7 +80,7 @@ protected StringBuilder initialValue() {
private static final BlockPlacementStatus ONE_RACK_PLACEMENT = private static final BlockPlacementStatus ONE_RACK_PLACEMENT =
new BlockPlacementStatusDefault(1, 1, 1); new BlockPlacementStatusDefault(1, 1, 1);
private enum NodeNotChosenReason { protected enum NodeNotChosenReason {
NOT_IN_SERVICE("the node is not in service"), NOT_IN_SERVICE("the node is not in service"),
NODE_STALE("the node is stale"), NODE_STALE("the node is stale"),
NODE_TOO_BUSY("the node is too busy"), NODE_TOO_BUSY("the node is too busy"),
@ -88,7 +88,8 @@ private enum NodeNotChosenReason {
TOO_MANY_NODES_ON_RACK("the rack has too many chosen nodes"), TOO_MANY_NODES_ON_RACK("the rack has too many chosen nodes"),
NOT_ENOUGH_STORAGE_SPACE("not enough storage space to place the block"), NOT_ENOUGH_STORAGE_SPACE("not enough storage space to place the block"),
NO_REQUIRED_STORAGE_TYPE("required storage types are unavailable"), NO_REQUIRED_STORAGE_TYPE("required storage types are unavailable"),
NODE_SLOW("the node is too slow"); NODE_SLOW("the node is too slow"),
NODE_NOT_CONFORM_TO_UD("the node doesn't conform to upgrade domain policy");
private final String text; private final String text;
@ -980,7 +981,7 @@ private static void logNodeIsNotChosen(DatanodeDescriptor node,
logNodeIsNotChosen(node, reason, null); logNodeIsNotChosen(node, reason, null);
} }
private static void logNodeIsNotChosen(DatanodeDescriptor node, protected static void logNodeIsNotChosen(DatanodeDescriptor node,
NodeNotChosenReason reason, String reasonDetails) { NodeNotChosenReason reason, String reasonDetails) {
assert reason != null; assert reason != null;
if (LOG.isDebugEnabled()) { if (LOG.isDebugEnabled()) {

View File

@ -74,6 +74,9 @@ protected boolean isGoodDatanode(DatanodeDescriptor node,
Set<String> upgradeDomains = getUpgradeDomains(results); Set<String> upgradeDomains = getUpgradeDomains(results);
if (upgradeDomains.contains(node.getUpgradeDomain())) { if (upgradeDomains.contains(node.getUpgradeDomain())) {
isGoodTarget = false; isGoodTarget = false;
logNodeIsNotChosen(node, NodeNotChosenReason.NODE_NOT_CONFORM_TO_UD,
"(The node's upgrade domain: " + node.getUpgradeDomain() +
" is already chosen)");
} }
} }
} }