NSAmelchev opened a new pull request, #13674: URL: https://github.com/apache/ignite/pull/13674
A node that is stopped while it becomes the new coordinator of an exchange may fail to send the restore-state request, since its communication SPI is already stopped. `GridDhtPartitionsExchangeFuture` reported this as `CRITICAL_ERROR`; now the error is still logged but not passed to the failure handler if the node is stopping. **Visible behavior change:** a graceful stop of a coordinator during an exchange no longer triggers the failure handler, i.e. no second stop attempt, thread dump or JVM halt on the stop timeout. `TcpDiscoveryClientTopologyGapTest` reproduces the race: the test stops the coordinator right after the previous one and caught the following on TC: ``` Failed to initialize new coordinator future [topVer=AffinityTopologyVersion [topVer=10, minorTopVer=0]] class org.apache.ignite.IgniteCheckedException: Failed to send message (node may have left the grid or TCP connection cannot be established due to firewall issues) [...] Caused by: class org.apache.ignite.spi.IgniteSpiException: Node is stopping. Caused by: class org.apache.ignite.IgniteCheckedException: Failed to connect, node stopped. ``` Its iteration count is reduced so that the test fits into the default test timeout. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
