Hi, The issue I mentioned below was not related to nested transactions. I debugged further, and the issue narrowed down to the following:
EmbeddedCacheManager manager = new DefaultCacheManager("config/infinispan-config.xml"); Configuration rc = manager.getCacheConfiguration("transaction"); manager.defineConfiguration("test1", rc); ConcurrentMap<String, Rollback> cache1 = manager.getCache("test1"); TransactionManager tm = manager.getCache("transaction").getAdvancedCache().getTransactionManager(); Rollback t1 = new Rollback("k1", "v1"); cache1.put("k1", t1); tm.begin(); Rollback tmp = cache1.get("k1"); tmp.setName("abcd"); cache1.replace("k1", tmp); tm.rollback(); Even after doing the rollback, "k1" still points to name "abcd". Only if I do a cache1.get("k1").clone(), rollback is functioning as expected. Thanks, Faseela ________________________________ From: infinispan-dev-boun...@lists.jboss.org [mailto:infinispan-dev-boun...@lists.jboss.org] On Behalf Of Faseela K Sent: Friday, November 08, 2013 6:39 PM To: infinispan -Dev List Subject: [infinispan-dev] Issue with nested transactions Hi, I have two osgi bundles, both having two separate caches. I explicitly started a transaction in Bundle 1. Within the transaction, I am accessing Bundle 2's cache(this is implicit transaction, since autocommit is true), and modifying it. Now, there is some operation on Bundle 1's cache done. After this operation, if I do a roll back, Only Bundle 1's cache operations are getting rolled back. I am not getting any error, though. Does anyone know why this happens? Steps : 1) Bundle 1 - transaction started 2) update bundle 2 cache 3) update bundle 1 cache 4) Bundle 1 - transaction rollback Issue : bundle 2 cache not rolled back!! Thanks, Faseela
_______________________________________________ infinispan-dev mailing list infinispan-dev@lists.jboss.org https://lists.jboss.org/mailman/listinfo/infinispan-dev