Hello! Paired connections are known to improve performance and even cluster stability. I guess they're not ON by default for the sake of backward compatibility and because they're somewhat less battle-tested than non-paired connections.
With regards of memory consumption, they should not increase consumption per se. One thing I can think of - more throughput, longer queues, increased parallelism leading to increased amount of temporary objects at any given moment of time. If you could compare memory dump analysis class histogram before and after setting change with the same workload, we could discuss the differences. You can learn more about these settings from the javadoc of https://ignite.apache.org/releases/latest/javadoc/org/apache/ignite/spi/communication/tcp/TcpCommunicationSpi.html When you have only one unpaired connections, operations wishing to communicate with another node need to wait until this connection becomes available. When you have multiple connections, they only need to wait for the next available one. Usually it is not a problem, that's why one unpaired connection is the default. I guess you've found use case where this becomes constraining factor. That's what advanced settings are for - corner cases. In 2.3, there's better detection of failed connections when paired connections are used. This makes me suspect you may have network problems with packets delayed or lost, and connections sometime break. In this case, when you have 5 connections both ways and not just 1, not all the work is stalled but merely one thread when waiting for packet retransmit. Have you solve the network problems, you may probably go with 1 or 2 connections instead of five. Regards, -- Sent from: http://apache-ignite-users.70518.x6.nabble.com/
