2 Replies Latest reply on Jun 9, 2011 2:08 AM by viewtifulced

    Explication about multithreading and JTA

    viewtifulced Newbie

      Hi,

       

      I'm working with Infinispan 4.2.1 FINAL. My application run 2 nodes in REPL_SYNC mode.

       

      Each node is associated  with an application taking a data on Infinispan, make treatment and push data on the cache.

       

      A simulator send 100 simultaneous thread to make teatment by application 1 (node 1) or appplication 2 (node 2). If I run the simulator with 1 thread no problem all data are coherent. If I run the simulator with more of 1 thread i have "replication timeout", "unable to acquire lock".... my configuration is:

       

      conf.setCacheMode(CacheMode.REPL_SYNC);
      conf.setLockAcquisitionTimeout(70000);
      conf.setL1CacheEnabled(false);
      conf.setConcurrencyLevel(500);
      conf.setTransactionManagerLookupClass("org.infinispan.transaction.lookup.GenericTransactionManagerLookup");
      conf.setFetchInMemoryState(true);

       

      I have tried multiple configuration or other CacheMode but if Infinispan does not generate exception then the treatment is very low.

       

      My last solution is to use an alternative Transaction manager like JBoss Transaction Manager or Atomikos to coordonate Threads (but how?). My application is NOT in a j2EE server.

       

      Thank you in advance for your help!