我正在使用 mysql 5.7数据库和 Jboss 4.2.3应用服务器。我在我们的应用程序中使用托管连接,对于 JMS消息,我们使用XA事务。
我们的应用程序也支持Oracle,MSSql Server和PostgreSQL数据库,我们正在使用具有相同Jboss配置的这些数据库,一切正常,没有任何错误。
但是现在我们考虑使用mysql5.7(最新)数据库以及相同的Jboss配置。 现在我的问题是:
09:59:44,475 WARN [loggerI18N] [com.arjuna.ats.internal.jta.resources.arjunacore.preparefailed] [com.arjuna.ats.internal.jta.resources.arjunacore.preparefailed] XAResourceRecord.prepare - 准备失败,异常为XAException.XAER_RMFAIL 09:59:44,476警告[arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.BasicAction_50] - 准备行动阶段a002866:c34a:565e7368:d7收到启发式决定:TwoPhaseOutcome.HEURISTIC_HAZARD 09:59:44,477 WARN [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.BasicAction_36] - BasicAction.End() - 准备动作阶段-id a002866:c34a:565e7368:d7失败。 09:59:44,480 WARN [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.BasicAction_37] - 收到启发式:TwoPhaseOutcome.HEURISTIC_HAZARD。 09:59:44,483警告[arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.BasicAction_38] - 行动中止 09:59:44,557 ERROR [SOAPFaultHelperJAXWS] SOAP请求异常 java.lang.RuntimeException:javax.transaction.HeuristicMixedException 在org.jboss.aspects.tx.TxPolicy.handleEndTransactionException(TxPolicy.java:198) 在org.jboss.aspects.tx.TxPolicy.endTransaction(TxPolicy.java:184) 在org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:87) at org.jboss.aspects.tx.TxInterceptor $ Required.invoke(TxInterceptor.java:191) 在org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101) 在org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:95) 在org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101) at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:62) 在org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101) 在org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77) 在org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:110) 在org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101) 在org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:46) 在org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101) 在org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106) 在org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101) 在org.jboss.wsf.container.jboss42.InvocationHandlerEJB3.invoke(InvocationHandlerEJB3.java:103) 在org.jboss.ws.core.server.ServiceEndpointInvoker.invoke(ServiceEndpointInvoker.java:221) at org.jboss.wsf.stack.jbws.RequestHandlerImpl.processRequest(RequestHandlerImpl.java:466) 在org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleRequest(RequestHandlerImpl.java:284) 在org.jboss.wsf.stack.jbws.RequestHandlerImpl.doPost(RequestHandlerImpl.java:201) 在org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleHttpRequest(RequestHandlerImpl.java:134) 在org.jboss.wsf.stack.jbws.EndpointServlet.service(EndpointServlet.java:84) 在javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 在org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) 在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 在org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230) 在org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) 在org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182) 在org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84) 在org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 在org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157) 在org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 在org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262) 在org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) 在org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process(Http11Protocol.java:583) 在org.apache.tomcat.util.net.JIoEndpoint $ Worker.run(JIoEndpoint.java:446) 在java.lang.Thread.run(Thread.java:662) 引起:javax.transaction.HeuristicMixedException 在com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1397) 在com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:135) 在com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:87) 在org.jboss.aspects.tx.TxPolicy.endTransaction(TxPolicy.java:175) ......还有40多个
因此我们无法继续前进。
我正试图从以前的某些日子修复它。我也研究了很多链接,网站,博客,但对我来说并不起作用。我尝试了一切,但无法解决问题。
这是导致 XA交易出现问题的原因,但无法确定其原因的确切原因?
我只将以前的数据库替换为mysql5.7 。与其他数据库一起工作正常。
请帮助我找出此异常和解决方案的确切原因。非常感谢你提前