2012-11-22 52 views
1

我正在使用JBoss As 7.1.1 Final。 我已經配置了事務模式'FULL_XA'的複製緩存。JBoss 7 + Infinispan和事務

我正在使用緩存作爲內存數據庫。緩存中的條目由應用程序操縱(添加/更新/刪除)。 我正面臨JTA事務回滾不會恢復緩存中較早添加條目的情況。 Infinispan文檔指定要爲緩存配置的事務管理器。我相信在JBoss應用程序服務器上,infinispan應該能夠自動選擇正確的事務管理器。此外,infinispan 1.2 XSD沒有提供關於如何爲緩存配置事務管理器的任何細節。 我們真的需要在這裏配置一個事務管理器嗎? 如果不是,事務回滾後可能會導致添加緩存的可能原因未被回滾。

一旦相應的事務回滾,infinispan是否提供刪除緩存中之前添加的條目的能力? 這實質上與RDBMS等持久數據存儲提供的原子性保證相同。

回答

2

上了Infinispan的論壇同樣的問題(和答案):https://community.jboss.org/message/778149#778149

事實上,直到事務被提交的Infinispan不寫任何東西到緩存中,所以沒有什麼回滾 - 提供高速緩存真是事務性的,默認不是。

您可以通過transaction elementtransactionMode屬性啓用交易。還有一個用於自定義事務管理器查找的屬性(transactionManagerLookupClass),但正如您猜測的,默認值應該與AS7一起使用。