-
Bug
-
Resolution: Done
-
Critical
-
5.2.6.Final
We can ignore any nodes leaving the cache during the invocation of a CommitCommand - the NBST command forwarding mechanism takes care of sending the CommitCommand to the right targets.
The same with 1PC PrepareCommands, they are only used for asynchronous caches and for pessimistic synchronous caches. If the cache is asynchronous we won't receive SuspectExceptions anyway, and if the cache is pessimistic the locks will have already been acquired on the primary owners before the PrepareCommand was sent.
There is already a more generic issue for dealing with SuspectExceptions everywhere: ISPN-2402. But exceptions during TransactionCoordinator.commit() are much more critical than prepare exceptions, because the TM can't roll back the transaction at that point (especially if Infinispan is registered as a synchronization).