On 3/7/12 1:34 PM, Mircea Markus wrote: > >>> +1 - I've started doing that and it's an ugly business. >>> >>> Here's another approach: >>> - all jgroups configs shipped with ISPN come with the SEQUENCER added >>> - by default all messages have NO_TOTAL_ORDER flag attached >>> - RpcManager.invoke mthods would also support a totalOrder flag (similar to >>> OBB flag currently supported) >>> >>> With this approach: >>> - we would support heterogeneous caches on the same cache manager: TO, 2PC >>> *and* non-tx caches >>> - we would allow existing users to switch to total order replication >>> without the need to change the jgroups configuration >>> - the performance penalty of having the SEQUENCER for caches that don't >>> need it, e.g. not tx caches, is minimal by the look of the code >>> >>> How does it sound? >> >> Intuitively, not nice ! Can't we have different configurations for these >> use cases ? > > We can, but the users that want to use both TO transactional caches and non > transactional caches on the same transport - a pretty common scenario IMO - > would have to add the seqeuncer to the jgroups configuration by hand.
Why not have 2 separate channels, but both residing on the same shared transport. I think Infinispan is injected a shared transport anyway, but AS, so this could be reused... Not sure on the details though, you'd have to talk to Paul for clarification > As the seqeuncer doesn't harm performance, why not have it there by default? Because this suggests total order when looking at the config. A user looking at the config, doesn't know that we're secretly bypassing SEQUENCER. -- Bela Ban Lead JGroups (http://www.jgroups.org) JBoss / Red Hat _______________________________________________ infinispan-dev mailing list [email protected] https://lists.jboss.org/mailman/listinfo/infinispan-dev
