Search code examples
javaignite

Single Ignite node does not stop TCP discovery


Single ignite node running with my application and it doesn't start because ignite constantly tries to find some other node

Log is filled with messages like:

o.a.i.s.d.tcp.TcpDiscoverySpi - TCP discovery accepted incoming connection [rmtAddr=/127.0.0.1, rmtPort=59459]
o.a.i.s.d.tcp.TcpDiscoverySpi - TCP discovery spawning a new thread for connection [rmtAddr=/127.0.0.1, rmtPort=59459]
o.a.i.s.d.tcp.TcpDiscoverySpi - Started serving remote node connection [rmtAddr=/127.0.0.1:59459, rmtPort=59459]
o.a.i.s.d.tcp.TcpDiscoverySpi - Finished serving remote node connection [rmtAddr=/127.0.0.1:59459, rmtPort=59459

Ignite config for discoverySpi:

<property name="discoverySpi">
    <bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi">
        <property name="localPort" value="48550"/>
        <property name="localPortRange" value="1"/>
        <property name="ipFinder">
            <bean class="org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder">
                <property name="addresses">
                    <list>
                        <value>myNode:48550</value>
                    </list>
                </property>
            </bean>
        </property>
    </bean>
</property>

Is there anything in config that I'm missing that would've solved the problem? Why does Ignite even attempt to find node on other port if port range is not specified?


Solution

  • There must be a confusion of network interfaces. Try specifying 127.0.0.1:48550 instead of myNode:48550. Or you can set TcpDiscoverySpi#localAddress to myNode.