[infinispan-dev] rethinking ISPN transactions

Paul Ferraro paul.ferraro at redhat.com
Tue Nov 12 09:51:00 EST 2013


On Fri, 2013-11-08 at 15:28 +0000, Mircea Markus wrote:
> Hey guys,
> 
> Several things were discussed lately([1],[2],[3],[4]) around our transaction support. Here's some some thoughts I have around re-modeling transactions for 7.0:
> 
> 1. Async options for commit/rollback
> - they don't really make sense as a user you don't get any guarantee on the status of the transaction
> - they complicate the code significantly
> - I think they should be removed

+1
Wildfly/EAP doesn't use async commits, but does use async rollbacks -
though, I'm not really concerned about the performance of cache
rollbacks, so sync rollbacks are fine.

> 2. READ_COMMITTED
> - it has the same performance as REPEATABLE_READ, but offers less guarantees. 
> - unlike REPEATABLE_READ, it also behaves inconsistently when the data is owned by transaction originator
> - I think it should be removed

+1
We already require REPEATABLE_READ in Wildfly/EAP.

> 3. Optimistic tx without Write Skew Check (WSC)
> - well, without WSC the transactions are not optimistic by definition 
> - they are something else: an batch update of multiple key/values. If the batch is successful you know the update was atomic. If it failed you don't get any guarantee
> - suggestion: optimistic tx should *always* have WSC enabled (no option to configure it)
> - build our batching functionality on top of what currently is optimistic tx without WSC and document it as such

OK, but can you elaborate on the last bullet?
So, the batching API will no longer contain transactional guarantees?

> 4. Remove 1PC option
> - I'm not totally sure about it, but does it really make sense to have 1PC as an option? they don't offer any consistency guarantees so async API + non tx do about the same thing
>  
> 
> [1] http://markmail.org/thread/a7fjko4dyejxqgdy
> [2] https://github.com/infinispan/infinispan/pull/2177
> [3] http://infinispan.markmail.org/thread/nl2bs7rjvayjcybv
> [4] http://infinispan.markmail.org/thread/vbg6g4otu7djazbc
> 
> 
> Cheers,




More information about the infinispan-dev mailing list