DNS hiccups cause uncaught NPE in HServerAddress#getBindAddress
---------------------------------------------------------------

                 Key: HBASE-2806
                 URL: https://issues.apache.org/jira/browse/HBASE-2806
             Project: HBase
          Issue Type: Bug
            Reporter: Benoit Sigoure
            Assignee: Benoit Sigoure
            Priority: Minor


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:
{code}
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
{code}
The {{NullPointerException}} in {{getBindAddress}} comes from the following 
line of code:
{code:java}
    return this.address.getAddress().getHostAddress();
{code}
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.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to