Details
-
Improvement
-
Status: Open
-
Major
-
Resolution: Unresolved
-
2.12
-
None
-
None
-
Docs Required, Release Notes Required
Description
Apache Ignite queues all unacknowledged messages in the GridNioRecoveryDescriptor#msgReqs queue. Size of this queue is effectively controlled by the TcpCommunicationSpi.ackSendThreshold property, which is 32 by default.
Queuing PUTs of large entries results in significant heap memory usage.
Please check if we really need to queue PUTs into FULL_SYNC caches. It seems to me we should not since a failure to write to a backup would be sent back to the client right away without any retries. If that is the case then please optimize the heap usage by not queueing FULL_SYNC cache update messages.
See the heap usage example attached: