[ 
https://issues.apache.org/jira/browse/HBASE-10200?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kiran Kumar M R updated HBASE-10200:
------------------------------------
    Affects Version/s: 2.0.0
               Status: Patch Available  (was: Open)

This patch adds check to verify if {{hbase.master.info.bindAddress}} and 
{{hbase.regionserver.info.bindAddress}} belong to host machine or not.

If address does not belong to the machine, then error message is logged and 
exception is thrown during HTTP Server startup/

hbase.util.Addressing#isLocalAddress method is added to check if an address is 
local. This method is from Hadoop netutils  but not reused(Its marked as 
Interface Private in Hadoop.) 

Please review and let me know any suggestions.

This patch is for master (2.0.0) branch.

> Better error message when HttpServer fails to start due to 
> java.net.BindException
> ---------------------------------------------------------------------------------
>
>                 Key: HBASE-10200
>                 URL: https://issues.apache.org/jira/browse/HBASE-10200
>             Project: HBase
>          Issue Type: Task
>    Affects Versions: 2.0.0
>            Reporter: Ted Yu
>            Priority: Minor
>              Labels: beginner
>
> Starting HBase using Hoya, I saw the following in log:
> {code}
> 2013-12-17 21:49:06,758 INFO  [master:hor12n19:42587] http.HttpServer: 
> HttpServer.start() threw a non Bind IOException
> java.net.BindException: Port in use: hor12n14.gq1.ygridcore.net:12432
>         at org.apache.hadoop.http.HttpServer.openListener(HttpServer.java:742)
>         at org.apache.hadoop.http.HttpServer.start(HttpServer.java:686)
>         at org.apache.hadoop.hbase.master.HMaster.run(HMaster.java:586)
>         at java.lang.Thread.run(Thread.java:722)
> Caused by: java.net.BindException: Cannot assign requested address
>         at sun.nio.ch.Net.bind0(Native Method)
>         at sun.nio.ch.Net.bind(Net.java:344)
>         at sun.nio.ch.Net.bind(Net.java:336)
>         at 
> sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:199)
>         at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
>         at 
> org.mortbay.jetty.nio.SelectChannelConnector.open(SelectChannelConnector.java:216)
>         at org.apache.hadoop.http.HttpServer.openListener(HttpServer.java:738)
> {code}
> This was due to hbase.master.info.bindAddress giving static address but Hoya 
> allocates master dynamically.
> Better error message should be provided: when bindAddress points another host 
> than local host, message should remind user to remove / adjust 
> hbase.master.info.bindAddress config param from hbase-site.xml



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to