Code: Select all
<socketAddresses>
<socket address="[IPv4]" port="9933" type="TCP"/>
<socket address="[IPv4}" port="9933" type="UDP"/>
<socket address="[IPv6]" port="9933" type="TCP"/>
<socket address="[IPv6]" port="9933" type="UDP"/>
</socketAddresses>
to version 2.16 we are getting errors on boot:
Code: Select all
Exception: java.lang.IllegalStateException
Message: UDP Port 9933 is already bound
Description: Unexpected error during Server boot. The server cannot start.
Solution: Please email us the content of this error message, including the stack trace to support[at]smartfoxserver.com
+--- --- ---+
Stack Trace:
+--- --- ---+
com.smartfoxserver.bitswarm.core.datagram.DatagramChannelCache.addChannels(DatagramChannelCache.java:27)
com.smartfoxserver.bitswarm.core.SocketAcceptor.bindUdpSocket(SocketAcceptor.java:444)
com.smartfoxserver.bitswarm.core.SocketAcceptor.bindSocket(SocketAcceptor.java:351)
com.smartfoxserver.bitswarm.core.BitSwarmEngine.bindSockets(BitSwarmEngine.java:603)
com.smartfoxserver.bitswarm.core.BitSwarmEngine.bootSequence(BitSwarmEngine.java:343)
com.smartfoxserver.bitswarm.core.BitSwarmEngine.start(BitSwarmEngine.java:198)
com.smartfoxserver.v2.SmartFoxServer.start(SmartFoxServer.java:312)
com.smartfoxserver.v2.Main.main(Main.java:13)
That's probably because of the switch to tomcat from jetty and tomcat trying to listen on UDP6 for all interfaces. Netstat on the server gives:
Code: Select all
udp6 0 0 [IPv4]:9933 :::* 24143/java
If we remove the
Code: Select all
<socket address="[IPv6]" port="9933" type="UDP"/>
from the server.xml smartfox starts up just fine, but of course we don't have IPv6 with UDP then. This is for a CentOS7 server with Oracle JDK8.
Is there a solution for our problem?