【问题标题】:Getting XAER_RMERR error in IBM web sphere在 IBM websphere 中出现 XAER_RMERR 错误
【发布时间】:2017-02-13 12:00:55
【问题描述】:

我们在 IBM WebSphere 服务器中运行服务时遇到以下错误。 你能告诉我为什么我们会收到以下错误。

[10/5/16 5:58:28:812 UTC] 00000007 XARecoveryDat A   WTRN0146I: Obtained 0 xid(s) from xa recover on XAResource: XYZ of which 0 will be processed by this server
[10/5/16 5:58:28:814 UTC] 00000007 XARecoveryDat A   WTRN0151I: Preparing to call xa recover on XAResource: ABC
[10/5/16 5:58:28:872 UTC] 00000007 WSRdbXaResour E   DSRA0304E:  XAException occurred. XAException contents and details are: "".
[10/5/16 5:58:28:872 UTC] 00000007 WSRdbXaResour E   DSRA0302E:  XAException occurred.  Error code is: XAER_RMERR (-3).  Exception is: <null>
[10/5/16 5:58:28:872 UTC] 00000007 XARminst      E   WTRN0037W: The transaction service encountered an error on an xa_recover operation. The resource was com.ibm.ws.rsadapter.spi.WSRdbXaResourceImpl@4966bf0a. The error code was XAER_RMERR. The exception stack trace follows: javax.transaction.xa.XAException
    at oracle.jdbc.xa.OracleXAResource.recover(OracleXAResource.java:730)
    at com.ibm.ws.rsadapter.spi.WSRdbXaResourceImpl.recover(WSRdbXaResourceImpl.java:1105)
    at com.ibm.ws.Transaction.JTA.XARminst.recover(XARminst.java:141)
    at com.ibm.ws.Transaction.JTA.XARecoveryData.recover(XARecoveryData.java:716)
    at com.ibm.tx.jta.impl.PartnerLogTable.recover(PartnerLogTable.java:432)
    at com.ibm.tx.jta.impl.RecoveryManager.resync(RecoveryManager.java:1542)
    at com.ibm.tx.jta.impl.RecoveryManager.performResync(RecoveryManager.java:2275)
    at com.ibm.ws.tx.jta.RecoveryManager.performResync(RecoveryManager.java:119)
    at com.ibm.tx.jta.impl.RecoveryManager.run(RecoveryManager.java:2228)
    at java.lang.Thread.run(Thread.java:784)

【问题讨论】:

    标签: jdbc oracle11g websphere oracle12c


    【解决方案1】:

    XA 是使用两阶段提交处理分布式事务的 Oracle 实现。上述错误表明 WAS 正在尝试对您的数据源调用 XA Recover 操作,该数据源已被定义为 XA 类型的数据源。调用失败,可能是因为数据库未启用以支持外部事务管理器(在本例中为 WAS)。

    如果您不需要使用 XA 事务,则可以从 WAS 中删除事务日志以消除错误([profile_root]/tranlog 文件夹)。如果您的应用程序需要 XA 支持,则可以使用 Oracle DB 附带的 initxa.sql 脚本在 Oracle 端启用它。

    【讨论】:

      【解决方案2】:

      错误说明:

      将消息驱动的 bean (MDB) 与 WebSphere MQ 一起使用时 WebSphere Application 中的 Java 消息服务 (JMS) 提供程序 服务器 v7,如果连接不正常,可能会发生 XAER_RMERR 错误 在将消息传递到 MDB 时损坏。

      本地修复:

      通过以下操作暂停并重新启动受影响的端点 以下步骤: 1.打开WebSphere管理控制台

      2 打开企业应用页面

      3.点击应用

      4.单击运行时选项卡

      5.管理消息端点链接

      6.选择失败的端点并点击暂停

      7.重复步骤 1-6 然后选择恢复

      【讨论】:

        猜你喜欢
        • 2019-04-30
        • 1970-01-01
        • 2012-12-07
        • 2015-11-05
        • 1970-01-01
        • 1970-01-01
        • 2013-07-10
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多