apache/hadoop · error · DiskBalancerException

INVALID_NODE

INVALID_NODE

Error message

The number of input nodes is 0. Please input the valid nodes.

What it means

Error "The number of input nodes is 0. Please input the valid nodes." thrown in apache/hadoop.

Source

Thrown at hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/diskbalancer/command/QueryCommand.java:77

        "Prints verbose results.");
  }

  /**
   * Executes the Client Calls.
   *
   * @param cmd - CommandLine
   */
  @Override
  public void execute(CommandLine cmd) throws Exception {
    LOG.info("Executing \"query plan\" command.");
    TextStringBuilder result = new TextStringBuilder();
    Preconditions.checkState(cmd.hasOption(DiskBalancerCLI.QUERY));
    verifyCommandOptions(DiskBalancerCLI.QUERY, cmd);
    String nodeVal = cmd.getOptionValue(DiskBalancerCLI.QUERY);
    if (StringUtils.isBlank(nodeVal)) {
      String warnMsg = "The number of input nodes is 0. "
          + "Please input the valid nodes.";
      throw new DiskBalancerException(warnMsg,
          DiskBalancerException.Result.INVALID_NODE);
    }
    nodeVal = nodeVal.trim();
    Set<String> resultSet = new TreeSet<>();
    String[] nodes = nodeVal.split(",");
    Collections.addAll(resultSet, nodes);
    String outputLine = String.format(
        "Get current status of the diskbalancer for DataNode(s). "
            + "These DataNode(s) are parsed from '%s'.", nodeVal);
    recordOutput(result, outputLine);
    for (String nodeName : resultSet) {
      // if the string is not name:port format use the default port.
      String nodeAddress = nodeName;
      if (!nodeName.matches("[^\\:]+:[0-9]{2,5}")) {
        int defaultIPC = NetUtils.createSocketAddr(
            getConf().getTrimmed(DFSConfigKeys.DFS_DATANODE_IPC_ADDRESS_KEY,
                DFSConfigKeys.DFS_DATANODE_IPC_ADDRESS_DEFAULT)).getPort();
        nodeAddress = nodeName + ":" + defaultIPC;

View on GitHub (pinned to 2add963021)

Solutions

  1. Provide at least one valid node to the query command, or query all nodes by default.
  2. Check the input node list or host file content.

When it happens

Trigger: DiskBalancer query command when the node list resolves to zero nodes.

Common situations: See trigger scenarios.


AI-assisted analysis of apache/hadoop@2add963021 (2026-08-22). Data as JSON: /api/errors/a5759e3af79004c2. Report an issue: GitHub.