ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 一个DB2数据库的锁死

一个DB2数据库的锁死

原创 Linux操作系统 作者:albaba 时间:2011-05-12 16:04:23 0 删除 编辑
     项目经理打电话给我,系统运行了一段时间很稳定,突然发生了数据库的锁表现象,通过电话支持让项目经理将 snapshot  中的数据库锁表信息输出:
XXXX_XXXBILL,XXXX_FLOWNOTE,XXXX_INSTANCE
以上三张表出现了 Mode  = X级别的锁定。查看数据库运行状况,针对这几张表的增、删、改操作在首个application ID 均是毫秒级,但第二个application ID 执行时就产生了行锁定,通过分析sql,语句无异常。
     
      接着从数据库角度以及DB CFG着手查看:
1、 检查相应表建立的索引
2、调整参数LOCKLIST, MAXLOCKS
      重启DB2后锁事务还是没有解决。
 
     只能去查看应用进程异常了:于是kill -3  查看进程thread
java.net.PlainSocketImpl.socketConnect(Native Method)
java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
java.net.Socket.connect(Socket.java:520)
java.net.Socket.connect(Socket.java:470)
java.net.Socket.(Socket.java:367)
java.net.Socket.(Socket.java:180)
pb.pub.uap.cmpp.MeaageMTSocketProcess.connectSMSG(MeaageMTSocketProcess.java:38)
pb.pub.uap.cmpp.CMPPMessagesend.maintenanceMTProcess(CMPPMessagesend.java:46)
pb.pub.uap.cmpp.CMPPMessagesend.sendMessage(CMPPMessagesend.java:90)
pb.pub.cmer.pub.BaseBillDMO.checkPass(BaseBillDMO.java:395)
pb.pub.pub.pf.busistate.PFBusiState.execApprovePass(PFBusiState.java:158)
pb.pub.pub.pf.busistate.PFBusiState.execApproveState(PFBusiState.java:180)
pb.pub.pub.compiler.AbstractCompiler.processWorkFlow(AbstractCompiler.java:292)
pb.pub.pub.compiler.AbstractCompiler.procActionFlow(AbstractCompiler.java:153)
pb.pub.pub.action.N_RCBZ_APPROVE.runComClass(N_RCBZ_APPROVE.java:33)
pb.pub.pub.pf.pfframe.PFRunClass.runComBusi(PFRunClass.java:142)
pb.pub.pub.pf.pfframe.PFBusiAction.actionOnStep(PFBusiAction.java:444)
pb.pub.pub.pf.pfframe.PFBusiAction.processAction(PFBusiAction.java:806)
nc.impl.uap.pf.PlatformEJB.processAction(PlatformEJB.java:113)
nc.itf.uap.pf.PlatformEJBEjbBean.processAction(PlatformEJBEjbBean.java:31)
nc.itf.uap.pf.EJSLocalStatelessnc_itf_uap_pf_PlatformEJB_7d0a933a.processAction(Unknown Source)
sun.reflect.GeneratedMethodAccessor1026.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:585)
pb.pub.framework.server.AbstractEJBToBServiceHandler.invoke(AbstractEJBToBServiceHandler.java:79)
pb.pub.framework.server.AbstractEJBToBServiceHandler.invoke(AbstractEJBToBServiceHandler.java:54)
$Proxy26.processAction(Unknown Source)
pb.pub.pub.pf.pfframe.PlatFormEntryImpl.processAction(PlatFormEntryImpl.java:55)
sun.reflect.GeneratedMethodAccessor1057.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:585)
pb.pub.framework.comn.serv.ServiceDispatcher.invokeBeanMethod(ServiceDispatcher.java:325)
pb.pub.framework.comn.serv.ServiceDispatcher.execCall(ServiceDispatcher.java:132)
pb.pub.framework.comn.serv.CommonServletDispatcher.doGet(CommonServletDispatcher.java:76)
pb.pub.framework.comn.serv.CommonServletDispatcher.doPost(CommonServletDispatcher.java:95)
javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1143)
com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1084)
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:145)
pb.pub.framework.server.LoggerServletFilter.doFilter(LoggerServletFilter.java:32)
com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:130)
com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:87)
com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:832)
com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:679)
com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:587)
com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:481)
com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:90)
com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:748)
com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1466)
com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:119)
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458)
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:387)
com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102)
com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
com.ibm.io.async.ResultHandler.complete(ResultHandler.java:196)
com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:751)
com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:881)
com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1473)
 
发现线程lock在java.net.PlainSocketImpl.socketConnect  应该是网络接口异常。联系开发终于搞定了,开发配置的短信网关异常.....
 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/795969/viewspace-695132/,如需转载,请注明出处,否则将追究法律责任。

下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2009-10-13

  • 博文量
    9
  • 访问量
    20657