[ https://issues.apache.org/jira/browse/IGNITE-11222?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Anatolii Botov updated IGNITE-11222: ------------------------------------ Environment: OS: Ubuntu 18.04, Centos 7 Ignite runs as part of application through Ignition.start() {code:java} java -version java version "1.8.0_102" Java(TM) SE Runtime Environment (build 1.8.0_102-b14) Java HotSpot(TM) 64-Bit Server VM (build 25.102-b14, mixed mode){code} was: OS: Ubuntu 18.04, Centos 7 Ignite runs as part of application through Ignition.start() > TcpDiscoverySpi stops listen port on network timeout > ---------------------------------------------------- > > Key: IGNITE-11222 > URL: https://issues.apache.org/jira/browse/IGNITE-11222 > Project: Ignite > Issue Type: Bug > Affects Versions: 2.7 > Environment: OS: Ubuntu 18.04, Centos 7 > Ignite runs as part of application through Ignition.start() > > {code:java} > java -version > java version "1.8.0_102" > Java(TM) SE Runtime Environment (build 1.8.0_102-b14) > Java HotSpot(TM) 64-Bit Server VM (build 25.102-b14, mixed mode){code} > Reporter: Anatolii Botov > Priority: Major > Attachments: ignite_logs.zip > > > I've created cluster from 2 nodes. > I've configured them as follow: > > {code:java} > val config = new IgniteConfiguration() > val discoverySpi = new TcpDiscoverySpi > discoverySpi.setLocalAddress(discoveryAddress.getHostString) > discoverySpi.setLocalPort(discoveryAddress.getPort) > val ipFinder = new TcpDiscoveryVmIpFinder() > ipFinder.setAddresses(ipAddresses.asJava) > discoverySpi.setIpFinder(ipFinder) > config.setDiscoverySpi(discoverySpi) > val commSpi = new TcpCommunicationSpi() > commSpi.setLocalAddress(communicationAddress.getHostString) > commSpi.setLocalPort(communicationAddress.getPort) > commSpi.setSlowClientQueueLimit(igniteConf.getInt("slow-client-queue-limit").getOrElse(1000)) > commSpi.setMessageQueueLimit( > > igniteConf.getInt("message-queue-limit").getOrElse(TcpCommunicationSpi.DFLT_MSG_QUEUE_LIMIT) > ) > config.setCommunicationSpi(commSpi) > config.setSegmentationPolicy(SegmentationPolicy.NOOP) > {code} > > > * For first node(10.84.0.120) values are: > {code:java} > val discoveryAddress = 0.0.0.0:47500 > val communicationAddress = 0.0.0.0:47600 > val ipAddresses = Seq("127.0.0.1"){code} > * For second node(10.84.13.131) values are: > {code:java} > val discoveryAddress = 0.0.0.0:47500 > val communicationAddress = 0.0.0.0:47600 > val ipAddresses = Seq("10.84.0.120:47500"){code} > > After i start first node and the second second connects to first and > everything is OK. Then i block traffic from first node to second: > {code:java} > iptables -A OUTPUT -d 10.84.0.120 -j DROP{code} > Unblocking: > {code:java} > iptables -D OUTPUT -d 10.84.0.120 -j DROP{code} > > There is 2 cases: > # if traffic is blocked more than default timeout in ignite config, > everything works as expected: split brain. > # But if i remove blocking before timeout is almost expired. Then first node > closes socket on port 47500 and becomes unreachable for further reconnection > attempts from first node. > -- This message was sent by Atlassian JIRA (v7.6.3#76005)