On 1 Jun 2011, at 08:26, Jonathan Halliday wrote:
> 
> some general comments:
> 
> - preserving some subset of the existing transactional guarantees is all well 
> and good BUT if the user is relying on additional 'guarantees' that are not 
> preserved in all cases then they'll be in trouble. Therefore, it's essential 
> to document not just what the minimum expected guarantees for a given config 
> are, but also that no additional properties that may coincidently be observed 
> are actually guaranteed. Some vendors go further and explicitly document the 
> bad things that may happen with given settings, since in some cases these are 
> not easy to reproduce in testing.
Agreed: https://issues.jboss.org/browse/ISPN-1146
> 
> - aquiring locks in defined (e.g. HC) order is kind of obvious and I'm 
> surprised it's not default behaviour.
It is the default behaviour indeed. We are considering an option to reorder 
lock acquisition in order to avoid deadlocks[1]. Enablable through a 
configuration.
> It probably should be as soon as the implementation is stable.  Additionally, 
> rather than making consecutive RPCs to a node for each of the keys it owns, 
> why not locally walk the full set of objects in the tx first and batch them 
> by owning node, then make one call to each node with the whole batch of lock 
> requests?
The futures[2] API does something similar, but not quite that though. 
Interesting optimisation for the Future API.
> 
> - I'm rather suspicions of any discussion that includes phrases like 'it will 
> have to rollback its running transactions'.   
> A node in an XA transaction that has already prepared CAN'T rollback, the 
> protocol does not allow it.
yes, totally agree. And since 5.0 we don't do that anymore. 
> So, optimisations using non-replicated locks for replicated data should be 
> disabled if the tx is under external control e.g. XA rather than local to 
> infinispan. For that matter I think you'll have trouble with internal 
> transactions too in some failure cases, but at least they won't affect me :-)


[1] http://community.jboss.org/wiki/PossibleLockingImprovements, see section #3.
[2] http://community.jboss.org/wiki/AsynchronousAPI
_______________________________________________
infinispan-dev mailing list
infinispan-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/infinispan-dev

Reply via email to