【问题标题】:JBoss 7 + Infinispan and TransactionsJBoss 7 + Infinispan 和事务
【发布时间】:2012-11-22 09:45:47
【问题描述】:

我正在使用 JBoss As 7.1.1 Final。 我已经使用事务模式“FULL_XA”配置了一个复制缓存。

我将缓存用作内存数据库。缓存中的条目由应用程序操作(添加/更新/删除)。 我面临这样一种情况,即 JTA 事务回滚不会恢复先前在缓存中添加的条目。 Infinispan 文档指定了为缓存配置的事务管理器。我相信在 JBoss 应用服务器上,infinispan 应该能够自动选择正确的事务管理器。此外,infinispan 1.2 XSD 没有提供关于我们应该如何为缓存配置事务管理器的任何细节。 我们真的需要在这里配置一个事务管理器吗? 如果不是,那么事务回滚后缓存添加未回滚的可能原因是什么。

infinispan 是否提供了在相应事务回滚后删除缓存中先前添加的条目的能力? 这与持久性数据存储(如 RDBMS)提供的原子性保证基本相同。

【问题讨论】:

    标签: infinispan


    【解决方案1】:

    在 Infinispan 论坛上遇到相同的问题(和答案):https://community.jboss.org/message/778149#778149

    实际上,Infinispan 在事务提交之前不会向缓存写入任何内容,因此没有什么可以回滚的 - 如果缓存确实是事务性的,则默认情况下不是。

    您可以通过transaction elementtransactionMode 属性启用事务。还有一个用于自定义事务管理器查找的属性 (transactionManagerLookupClass),但正如您猜测的那样,默认值应该适用于 AS7。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-04-02
      • 2012-10-14
      • 2014-03-05
      • 2013-06-23
      • 2012-10-12
      • 2012-06-29
      • 2015-08-28
      • 2013-10-16
      相关资源
      最近更新 更多