Description
GridCacheIoManager#send[1] and GridCacheIoManager#sendOrderedMessage[2] have incorrect retryCnt comparison in catch block and real retries count will be one less, than configured.
Thus, if you set IgniteConfiguration#setNetworkSendRetryCount to 1 and IgniteCheckedException has been thrown during sending of message because of network timeout, error, etc., then no actual retries will happen and message will be lost.
Reproducer: GridCacheIoManagerRetryTest.patch
Links:
- https://github.com/apache/ignite/blob/6286f67735b2eb7312bc61d5e0549b22f424348f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java#L1222
- https://github.com/apache/ignite/blob/6286f67735b2eb7312bc61d5e0549b22f424348f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java#L1289
Attachments
Attachments
Issue Links
- causes
-
IGNITE-20514 Transaction becomes stuck after GridNearTxFinishRequest was lost
- Open
- links to