6 Replies Latest reply on Nov 8, 2006 9:50 AM by Vladimir Blagojevic

    JBC partial state transfer and Region.activate()

    Vladimir Blagojevic Master

      Hey guys,

      I spent previous two days investigating new JGroups callback based partial state transfer implemented in JBC HEAD. Previous JBC releases relied on RPC based mechanism to implement partial state transfer. We are trying to move partial state transfer to JGroups API. The main reason why we want to do this is to harness benefits of FLUSH protocol from JGroups. I have a working version that is elegant and does not require a lot of coding. However, I have discovered that concurrent activation test is not always passing.

      Concurrent activation test starts N cache nodes and each node concurrently activates certain region. Underneath, for each activate requests the plumbing does partial getState with flush. In order to have this work reliably I have to implement a feature in FLUSH [1] that supports concurrent flushing. Bela and I talked about this problem on our conference call and he gave me some ideas how to do this a ala concurrent jgroups merge.


      This task seems like a priority for jbc 2.0. What should I do in terms of JBC release plan? I can have partial state transfer implemented soon but as I mentioned above concurrent activations will not work reliably until [1] is resolved. Bela has agree that we will include this feature/fix in JGroups 2.4 service pack but delivery date of for this SP is very undetermined. My estimate is that coding and testing [1] along with testing of partial state transfer and concurrent activation in JBC will take around 3 weeks.

      Regards,
      Vladimir

      [1] http://jira.jboss.com/jira/browse/JGRP-332