hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "HBase Review Board (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HBASE-2806) DNS hiccups cause uncaught NPE in HServerAddress#getBindAddress
Date Fri, 02 Jul 2010 00:59:49 GMT

    [ https://issues.apache.org/jira/browse/HBASE-2806?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12884500#action_12884500

HBase Review Board commented on HBASE-2806:

Message from: "Benoit Sigoure" <tsunanet@gmail.com>

This is an automatically generated e-mail. To reply, visit:

Review request for hbase.


The code returns null when this happens.  Also, whenever an instance
of HServerAddress is created, the code will verify that the IP can
be retrieved and throw an IllegalArgumentException if it cannot.

This change also fixes some other random little things like:
  - Remove unnecessary parentheses.
  - Remove unnecessary uses of `this' outside of constructors.
  - Missing spaces after `if'.
  - Remove wildcard imports.
  - Remove unnecessary creation of objects.

This addresses bug HBASE-2806.


  trunk/src/main/java/org/apache/hadoop/hbase/HServerAddress.java 959479 

Diff: http://review.hbase.org/r/244/diff


Code compiles.



> 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
> 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.

View raw message