Radim Vansa created ISPN-6949:
---------------------------------
Summary: TxInterceptor.verifyRemoteTransaction does not work on 1PC
Key: ISPN-6949
URL:
https://issues.jboss.org/browse/ISPN-6949
Project: Infinispan
Issue Type: Bug
Components: Core, Transactions
Affects Versions: 9.0.0.Alpha4
Reporter: Radim Vansa
{{TxInterceptor.verifyRemoteTransaction}} which includes check if the transaction is
already completed is called in PrepareCommand processing *after* the command executed.
With 1PC txs (as in pessimistic mode) this is already after the entries are committed into
DC, so the rollback can't do much.
Actually I have encountered this in FlagsReplicationTest because LockControlCommand does
not honor the (non-replicated) FAIL_SILENTLY flag - such command should ignore remote
exceptions but when the exception hits PessimisticLockingInterceptor, this emits
TxCompletionNotificationCommand which marks the transaction as completed (and therefore
the following PrepareCommand tries to execute the rollback). The FAIL_SILENTLY flag
prevents the command to throw exception out of the interceptor stack, but it should
probably discard the exception right after RPC (or replicate the flag remotely).
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)