You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Sean Busbey (JIRA)" <ji...@apache.org> on 2015/07/14 23:24:05 UTC
[jira] [Commented] (HBASE-14078) improve error message when HMaster
can't bind to port
[ https://issues.apache.org/jira/browse/HBASE-14078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14627071#comment-14627071 ]
Sean Busbey commented on HBASE-14078:
-------------------------------------
versions set to 2.0.0 because that's where I hit it. I'm guessing it also applies to all other versions. If someone has a chance to check feel free to add in any patch level as a target.
> improve error message when HMaster can't bind to port
> -----------------------------------------------------
>
> Key: HBASE-14078
> URL: https://issues.apache.org/jira/browse/HBASE-14078
> Project: HBase
> Issue Type: Improvement
> Components: master
> Affects Versions: 2.0.0
> Reporter: Sean Busbey
> Labels: beginner
> Fix For: 2.0.0
>
>
> When the master fails to start becahse hbase.master.port is already taken, the log messages could make it easier to tell.
> {quote}
> 2015-07-14 13:10:02,667 INFO [main] regionserver.RSRpcServices: master/a1221.halxg.cloudera.com/10.20.188.121:16000 server-side HConnection retries=350
> 2015-07-14 13:10:02,879 INFO [main] ipc.SimpleRpcScheduler: Using deadline as user call queue, count=3
> 2015-07-14 13:10:02,895 ERROR [main] master.HMasterCommandLine: Master exiting
> java.lang.RuntimeException: Failed construction of Master: class org.apache.hadoop.hbase.master.HMaster
> at org.apache.hadoop.hbase.master.HMaster.constructMaster(HMaster.java:2258)
> at org.apache.hadoop.hbase.master.HMasterCommandLine.startMaster(HMasterCommandLine.java:234)
> at org.apache.hadoop.hbase.master.HMasterCommandLine.run(HMasterCommandLine.java:140)
> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
> at org.apache.hadoop.hbase.util.ServerCommandLine.doMain(ServerCommandLine.java:126)
> at org.apache.hadoop.hbase.master.HMaster.main(HMaster.java:2272)
> Caused by: java.net.BindException: Address already in use
> at sun.nio.ch.Net.bind0(Native Method)
> at sun.nio.ch.Net.bind(Net.java:444)
> at sun.nio.ch.Net.bind(Net.java:436)
> at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:214)
> at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
> at org.apache.hadoop.hbase.ipc.RpcServer.bind(RpcServer.java:2513)
> at org.apache.hadoop.hbase.ipc.RpcServer$Listener.<init>(RpcServer.java:599)
> at org.apache.hadoop.hbase.ipc.RpcServer.<init>(RpcServer.java:2000)
> at org.apache.hadoop.hbase.regionserver.RSRpcServices.<init>(RSRpcServices.java:919)
> at org.apache.hadoop.hbase.master.MasterRpcServices.<init>(MasterRpcServices.java:211)
> at org.apache.hadoop.hbase.master.HMaster.createRpcServices(HMaster.java:509)
> at org.apache.hadoop.hbase.regionserver.HRegionServer.<init>(HRegionServer.java:535)
> at org.apache.hadoop.hbase.master.HMaster.<init>(HMaster.java:351)
> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
> at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
> at org.apache.hadoop.hbase.master.HMaster.constructMaster(HMaster.java:2253)
> ... 5 more
> {quote}
> I recognize that the "RSRpcServices" log message shows port 16000, but I don't know why a new operator would. Additionally, it'd be nice to tell them that the port is controlled by {{hbase.master.port}}. Maybe give a hint on how to see what's using the port. Could be too os-dist specific?
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)