hi Vladislav, BTW, the priority for all the threads of Discovery SPI is 10 (MAX_PRIORITY) by default, right? And for the other threads, the priority is NORMAL_PRIORITY by default, right?
Is that possible that when the cache is with big data the discovery events cannot be delivered to the all the nodes in time? If I understand right: 1. the join process goes through: JoinRequestMessage -> NodeAddedMessage -> NodeAddFinishedMessage 2. every discovery event is sent by coordinator(oldest node) through all the server nodes one by one until it reaches coordinator again, then it goes to next message. If wrong, please correct. BTW, which parameter can control the time of node join? NetworkTime? long timeout = spi.netTimeout; long threshold = U.currentTimeMillis() + timeout; while (spiState == CONNECTING && timeout > 0) { try { mux.wait(timeout); timeout = threshold - U.currentTimeMillis(); } catch (InterruptedException ignored) { Thread.currentThread().interrupt(); throw new IgniteSpiException("Thread has been interrupted."); } } Thanks, -Jason -- View this message in context: http://apache-ignite-users.70518.x6.nabble.com/Fail-to-join-topology-and-repeat-join-process-tp6987p7057.html Sent from the Apache Ignite Users mailing list archive at Nabble.com.