[
https://issues.apache.org/jira/browse/OMID-247?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Istvan Toth updated OMID-247:
-----------------------------
Release Note:
The default port for the TSO server has been changed from 54758 to 24758 to
avoid random TSO server startup failures due to conflicts with ephemeral TCP
ports in use at the host.
When updating existing installations make sure that the port is the same in the
omid client and server config files: either update the port in the omid client
config files for all clients, or revert to the old port on the server side.
> Change TSO default port to be outside the ephemeral range
> ---------------------------------------------------------
>
> Key: OMID-247
> URL: https://issues.apache.org/jira/browse/OMID-247
> Project: Phoenix Omid
> Issue Type: Bug
> Reporter: Istvan Toth
> Assignee: Istvan Toth
> Priority: Major
>
> The default TSO port, 54758 is in the epehemarl port range of every OS.
> This can cause TSO server to randomly error out on startup with an error
> similar to the following:
> {noformat}
> Exception in thread "Thread-5" java.lang.IllegalStateException: Expected the
> service TSOServer [FAILED] to be TERMINATED, but the service has FAILED
> at
> org.apache.phoenix.thirdparty.com.google.common.util.concurrent.AbstractService.checkCurrentState(AbstractService.java:366)
> at
> org.apache.phoenix.thirdparty.com.google.common.util.concurrent.AbstractService.awaitTerminated(AbstractService.java:329)
> at
> org.apache.phoenix.thirdparty.com.google.common.util.concurrent.AbstractIdleService.awaitTerminated(AbstractIdleService.java:175)
> at org.apache.omid.tso.TSOServer$2.run(TSOServer.java:137)
> Caused by: org.apache.omid.tso.LeaseManagement$LeaseManagementException:
> Error initializing Lease Manager
> at
> org.apache.omid.tso.VoidLeaseManager.startService(VoidLeaseManager.java:38)
> at org.apache.omid.tso.TSOServer.startUp(TSOServer.java:102)
> at
> org.apache.phoenix.thirdparty.com.google.common.util.concurrent.AbstractIdleService$DelegateService$1.run(AbstractIdleService.java:60)
> at
> org.apache.phoenix.thirdparty.com.google.common.util.concurrent.Callables$4.run(Callables.java:119)
> at java.lang.Thread.run(Thread.java:748)
> 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:433)
> at sun.nio.ch.Net.bind(Net.java:425)
> at
> sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)
> at
> io.netty.channel.socket.nio.NioServerSocketChannel.doBind(NioServerSocketChannel.java:134)
> at
> io.netty.channel.AbstractChannel$AbstractUnsafe.bind(AbstractChannel.java:550)
> at
> io.netty.channel.DefaultChannelPipeline$HeadContext.bind(DefaultChannelPipeline.java:1334)
> at
> io.netty.channel.AbstractChannelHandlerContext.invokeBind(AbstractChannelHandlerContext.java:506)
> at
> io.netty.channel.AbstractChannelHandlerContext.bind(AbstractChannelHandlerContext.java:491)
> at
> io.netty.channel.DefaultChannelPipeline.bind(DefaultChannelPipeline.java:973)
> at io.netty.channel.AbstractChannel.bind(AbstractChannel.java:248)
> at
> io.netty.bootstrap.AbstractBootstrap$2.run(AbstractBootstrap.java:356)
> at
> io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164)
> at
> io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:472)
> at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:500)
> at
> io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
> at
> io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
> ... 1 more{noformat}
> The only way to fix this is to change the default port number to be outside
> the ephemeral range.
> Anything under 32K seems to be safe.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)