Uploaded image for project: 'Hadoop HDFS'
  1. Hadoop HDFS
  2. HDFS-13175

Add more information for checking argument in DiskBalancerVolume

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • 3.0.0
    • 3.1.0, 3.0.3
    • diskbalancer
    • None
    • Reviewed

    Description

      We have seen the following stack in production

      Exception in thread "main" java.lang.IllegalArgumentException
      	at com.google.common.base.Preconditions.checkArgument(Preconditions.java:72)
      	at org.apache.hadoop.hdfs.server.diskbalancer.datamodel.DiskBalancerVolume.setUsed(DiskBalancerVolume.java:268)
      	at org.apache.hadoop.hdfs.server.diskbalancer.connectors.DBNameNodeConnector.getVolumeInfoFromStorageReports(DBNameNodeConnector.java:141)
      	at org.apache.hadoop.hdfs.server.diskbalancer.connectors.DBNameNodeConnector.getNodes(DBNameNodeConnector.java:90)
      	at org.apache.hadoop.hdfs.server.diskbalancer.datamodel.DiskBalancerCluster.readClusterInfo(DiskBalancerCluster.java:132)
      	at org.apache.hadoop.hdfs.server.diskbalancer.command.Command.readClusterInfo(Command.java:123)
      	at org.apache.hadoop.hdfs.server.diskbalancer.command.PlanCommand.execute(PlanCommand.java:107)
      

      raised from

       public void setUsed(long dfsUsedSpace) {
          Preconditions.checkArgument(dfsUsedSpace < this.getCapacity());
          this.used = dfsUsedSpace;
        }
      

      However, the datanode reports at the very moment were not captured. We should add more information into the stack trace to better diagnose the issue.

      Attachments

        1. HDFS-13175.00.patch
          2 kB
          Lei (Eddy) Xu
        2. HDFS-13175.01.patch
          4 kB
          Lei (Eddy) Xu

        Activity

          People

            eddyxu Lei (Eddy) Xu
            eddyxu Lei (Eddy) Xu
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: