HBase
  1. HBase
  2. HBASE-2806

DNS hiccups cause uncaught NPE in HServerAddress#getBindAddress

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 0.90.0
    • Component/s: None
    • Labels:
      None
    • Hadoop Flags:
      Reviewed

      Description

      Yesterday at the Hadoop Summit, the "HADOOP" wireless network was using a pair of DNS servers that couldn't resolve localhost.. This prevented me from starting HBase as the construction of the HMaster was failing with the following rather cryptic error:

      2010-06-29 14:30:24,603 ERROR org.apache.hadoop.hbase.master.HMaster: Failed to start master
      java.lang.RuntimeException: Failed construction of Master: class org.apache.hadoop.hbase.master.HMaster$LocalHMasternull
              at org.apache.hadoop.hbase.master.HMaster.constructMaster(HMaster.java:1217)
              at org.apache.hadoop.hbase.LocalHBaseCluster.<init>(LocalHBaseCluster.java:112)
              at org.apache.hadoop.hbase.master.HMaster.doMain(HMaster.java:1298)
              at org.apache.hadoop.hbase.master.HMaster.main(HMaster.java:1355)
      Caused by: java.lang.reflect.InvocationTargetException
              at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
              at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
              at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
              at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
              at org.apache.hadoop.hbase.master.HMaster.constructMaster(HMaster.java:1215)
              ... 3 more
      Caused by: java.lang.NullPointerException
              at org.apache.hadoop.hbase.HServerAddress.getBindAddress(HServerAddress.java:89)
              at org.apache.hadoop.hbase.master.HMaster.<init>(HMaster.java:204)
              at org.apache.hadoop.hbase.master.HMaster$LocalHMaster.<init>(HMaster.java:1230)
              ... 8 more
      

      The NullPointerException in getBindAddress comes from the following line of code:

          return this.address.getAddress().getHostAddress();
      

      where getAddress() was returning null.

      I think the code should check for this case, log an appropriate error message (to point whoever is going to troubleshoot the problem in the right direction), and throw something else than an NPE.

        Activity

        No work has yet been logged on this issue.

          People

          • Assignee:
            Benoit Sigoure
            Reporter:
            Benoit Sigoure
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development