stack created HBASE-19345:
-----------------------------
Summary: TestJMXConnectorServer can fail with
java.net.BindException
Key: HBASE-19345
URL: https://issues.apache.org/jira/browse/HBASE-19345
Project: HBase
Issue Type: Bug
Reporter: stack
See nightly
https://builds.apache.org/view/H-L/view/HBase/job/HBase%20Nightly/job/branch-1.2/136
{code}
2017-11-21 20:28:11,973 ERROR [2831917ab33b:39603.activeMasterManager]
coprocessor.CoprocessorHost(524): The coprocessor
org.apache.hadoop.hbase.JMXListener threw java.rmi.server.ExportException: Port
already in use: 61120; nested exception is:
java.net.BindException: Address already in use (Bind failed)
java.rmi.server.ExportException: Port already in use: 61120; nested exception
is:
java.net.BindException: Address already in use (Bind failed)
at sun.rmi.transport.tcp.TCPTransport.listen(TCPTransport.java:341)
at
sun.rmi.transport.tcp.TCPTransport.exportObject(TCPTransport.java:249)
at sun.rmi.transport.tcp.TCPEndpoint.exportObject(TCPEndpoint.java:411)
at sun.rmi.transport.LiveRef.exportObject(LiveRef.java:147)
at
sun.rmi.server.UnicastServerRef.exportObject(UnicastServerRef.java:236)
at sun.rmi.registry.RegistryImpl.setup(RegistryImpl.java:196)
at sun.rmi.registry.RegistryImpl.<init>(RegistryImpl.java:182)
at
java.rmi.registry.LocateRegistry.createRegistry(LocateRegistry.java:203)
at
org.apache.hadoop.hbase.JMXListener.startConnectorServer(JMXListener.java:132)
at org.apache.hadoop.hbase.JMXListener.start(JMXListener.java:207)
at
org.apache.hadoop.hbase.coprocessor.CoprocessorHost$Environment.startup(CoprocessorHost.java:414)
at
org.apache.hadoop.hbase.coprocessor.CoprocessorHost.loadInstance(CoprocessorHost.java:255)
at
org.apache.hadoop.hbase.coprocessor.CoprocessorHost.loadSystemCoprocessors(CoprocessorHost.java:161)
at
org.apache.hadoop.hbase.master.MasterCoprocessorHost.<init>(MasterCoprocessorHost.java:87)
at
org.apache.hadoop.hbase.master.HMaster.finishActiveMasterInitialization(HMaster.java:721)
at org.apache.hadoop.hbase.master.HMaster.access$600(HMaster.java:189)
at org.apache.hadoop.hbase.master.HMaster$2.run(HMaster.java:1803)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.net.BindException: Address already in use (Bind failed)
at java.net.PlainSocketImpl.socketBind(Native Method)
at
java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:376)
at java.net.ServerSocket.bind(ServerSocket.java:376)
at java.net.ServerSocket.<init>(ServerSocket.java:237)
at java.net.ServerSocket.<init>(ServerSocket.java:128)
at
sun.rmi.transport.proxy.RMIDirectSocketFactory.createServerSocket(RMIDirectSocketFactory.java:45)
at
sun.rmi.transport.proxy.RMIMasterSocketFactory.createServerSocket(RMIMasterSocketFactory.java:345)
at
sun.rmi.transport.tcp.TCPEndpoint.newServerSocket(TCPEndpoint.java:666)
at sun.rmi.transport.tcp.TCPTransport.listen(TCPTransport.java:330)
... 17 more
{code}
The RMI port is hardcoded. A concurrent cluster can make this test fail. We
don't have facility for retrying alternate RMI port. We don't want it even, for
prod. deploy. Would be good though if the port changed if problem in unit tests.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)