0 0

ibatis 事物超时10

集成Spring 数据库使用DB2。 有连接池。 在tomcat下运行没问题。 但放到was下面就提示下面信息
错误信息:

Caused by: com.ibm.db2.jcc.c.SqlException: The current transaction has been rolled back because of a deadlock or timeout.  Reason code "68".
at com.ibm.db2.jcc.c.fg.e(fg.java:1596)
at com.ibm.db2.jcc.b.gb.s(gb.java:859)
at com.ibm.db2.jcc.b.gb.k(gb.java:387)
at com.ibm.db2.jcc.b.gb.a(gb.java:60)
at com.ibm.db2.jcc.b.w.a(w.java:52)
at com.ibm.db2.jcc.b.wb.c(wb.java:213)
at com.ibm.db2.jcc.c.gg.ab(gg.java:1779)
at com.ibm.db2.jcc.c.gg.d(gg.java:2324)
at com.ibm.db2.jcc.c.gg.W(gg.java:457)
at com.ibm.db2.jcc.c.gg.executeUpdate(gg.java:440)
at com.ibm.ws.rsadapter.jdbc.WSJdbcPreparedStatement.pmiExecuteUpdate(WSJdbcPreparedStatement.java:1081)
at com.ibm.ws.rsadapter.jdbc.WSJdbcPreparedStatement.executeUpdate(WSJdbcPreparedStatement.java:748)
at com.opensymphony.workflow.spi.jdbc.JDBCWorkflowStore.markFinished(JDBCWorkflowStore.java:398)
at com.opensymphony.workflow.AbstractWorkflow.createNewCurrentStep(AbstractWorkflow.java:1563)
at com.opensymphony.workflow.AbstractWorkflow.transitionWorkflow(AbstractWorkflow.java:1333)
at com.opensymphony.workflow.AbstractWorkflow.doAction(AbstractWorkflow.java:585)
at com.chinauip.workflow.opensymphony.service.WorkflowServiceImpl.doAction(WorkflowServiceImpl.java:389)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:296)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:177)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:144)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:166)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at $Proxy1625.doAction(Unknown Source)
at com.chinauip.workflow.opensymphony.web.action.PageFrameAction.doSend(PageFrameAction.java:657)
at com.chinauip.workflow.opensymphony.web.action.PageFrameAction.doSave(PageFrameAction.java:992)
at com.chinauip.workflow.opensymphony.web.action.PageFrameAction.execute(PageFrameAction.java:98)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.ibm.ws.cache.servlet.ServletWrapper.serviceProxied(ServletWrapper.java:282)
at com.ibm.ws.cache.servlet.CacheHook.handleFragment(CacheHook.java:459)
at com.ibm.ws.cache.servlet.CacheHook.handleServlet(CacheHook.java:265)
at com.ibm.ws.cache.servlet.ServletWrapper.service(ServletWrapper.java:262)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1096)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1037)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:145)
at com.chinauip.util.filter.UserAccountsCookieFilter.doFilter(UserAccountsCookieFilter.java:102)
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:130)
at com.chinauip.gzq.check.common.ReplaceFilter.doFilter(ReplaceFilter.java:37)
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:130)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:130)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:87)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:832)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:679)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:566)
at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:478)
at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3444)
at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:267)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:815)
at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1466)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:119)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:387)
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:195)
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:743)
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:873)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1473)
2012年7月06日 10:54

6个答案 按时间排序 按投票排序

0 0

查看原因是数据库超时或者死锁,引起这个原因可能是创建数据库连接太多,超过数据库连接的数量,如果是这样,试一下每次操作数据之后,释放数据库连接

2012年7月10日 09:59
0 0

检查一下DB2的日志,看是否有死锁和慢SQL。Tomcat使用的哪个连接池?WebSphere有用其自带的连接池尝试吗?

2012年7月07日 15:29
0 0

把连接池的 maxStatements 和 maxStatementsPerConnection 设置为零

2012年7月06日 15:15
0 0

网络是否正常,SQL执行多少时间。这个在网络延时、数据执行的好时,查询数据量方面。要么就是多个实例,看看有没有用悲观锁,导致表锁住。

2012年7月06日 14:38
0 0

根据错误提示,是死锁
可能SQL语句操作的数据量大,导致死锁

2012年7月06日 13:59
0 0

ibatis 版本问题?啥版本的?换个ibaits版本试试

2012年7月06日 11:17

相关推荐

Global site tag (gtag.js) - Google Analytics