首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >weblogic卡住问题

weblogic卡住问题
EN

Stack Overflow用户
提问于 2012-02-23 08:32:40
回答 1查看 5.3K关注 0票数 1

我们遇到了如下问题:1.从数据库读取套接字太长,达到StuckThreadMaxTime 600 s 2。数据库查询运行时间过长。2.对数据库或其他对象的锁定

如有任何建议,将不胜感激!

jrockit.net.SocketNativeIO.readBytesPinned(SocketNativeIO.java:???)线程-36“卡住ExecuteThread:'3‘用于队列:'weblogic.kernel.Default (自调优)’”{jrockit.net.SocketNativeIO.socketRead(SocketNativeIO.java:31) java.net.SocketInputStream.socketRead0(SocketInputStream.java:???)java.net.SocketInputStream.read(SocketInputStream.java:107) com.microsoft.sqlserver.jdbc.DBComms.receive(Unknown Source( com.microsoft.sqlserver.jdbc.SQLServerStatement.doExecuteStatement(Unknown Source) com.microsoft.sqlserver.jdbc.SQLServerStatement$StatementExecutionRequest.executeStatement(Unknown Source( com.microsoft.sqlserver.jdbc.CancelableRequest.execute(Unknown Source) com.microsoft.sqlserver.jdbc.SQLServerConnection.executeRequest(Unknown Source)

^-持有锁: com.microsoft.sqlserver.jdbc.TDSWriter@41dbbddthin锁com.microsoft.sqlserver.jdbc.SQLServerStatement.executeQuery(Unknown来源) com.microsoft.sqlserver.jdbc.SQLServerStatement.getMaxFieldSize(Unknown源) weblogic.jdbc.common.internal.ConnectionEnv.cleanUpStatementForReUse(ConnectionEnv.java:1356) weblogic.jdbc.common.internal.ConnectionEnv.returnCachedStatement(ConnectionEnv.java:1118) ^--持有锁: weblogic.jdbc.common.internal.ConnectionEnv$1@41f2d97thin锁weblogic.jdbc.wrapper.Statement.internalClose(Statement.java:342) weblogic.jdbc.wrapper.Statement.doClose(Statement.java:399) weblogic.jdbc.wrapper.Statement.close(Statement.java:391) com.riskintegrator.infrastructure.database.DBConnector.getConnection(DBConnector.java:66) ^-持有锁: com.riskintegrator.infrastructure.database.DBConnector@1fda7d8thin lock com.riskintegrator.infrastructure.database.DBConnector.(DBConnector.java:56)com.riskintegrator.slsb.BaseSessionBean.populateFormWithPreparedStatement(BaseSessionBean.java:76) com.riskintegrator.slsb.BaseSession_6uq9n4_EOImpl.populateFormWithPreparedStatement(BaseSession_6uq9n4_EOImpl.java:763) com.riskintegrator.slsb.BaseSessionDelegate.populateFormWithPreparedStatement(BaseSessionDelegate.java:118) com.riskintegrator.slsb.setup.SeverityBandBD.selectByValue(SeverityBandBD.java:181) com.riskintegrator.slsb.ca.ComputeAssessmentScoreBean.ComputeRiskScore(ComputeAssessmentScoreBean.java:332) com.riskintegrator.slsb.ca.ComputeAssessmentScoreBean.ComputeAssessmentScore( com.riskintegrator.slsb.ca.ComputeAssessmentScoreBean_s478gq_EOImpl.ComputeAssessmentScore(ComputeAssessmentScoreBean_s478gq_EOImpl.java:37) com.riskintegrator.slsb.ca.ComputeAssessmentScoreBD.ComputeAssessmentScore(ComputeAssessmentScoreBD.java:32) com.riskintegrator.slsb.ca.AssessmentScoreBean.ProcessAssessment(AssessmentScoreBean.java:44) com.riskintegrator.slsb.ca.AssessmentScoreSession_nlmr0a_EOImpl.ProcessAssessment(AssessmentScoreSession_nlmr0a_EOImpl.java:37) com.riskintegrator.slsb.ca.AssessmentScoreBD. )com.riskintegrator.slsb.ScheduledBatchBean.executeJob(ScheduledBatchBean.java:568) com.riskintegrator.slsb.ScheduledBatchBean.executeDailyRunOnce(ScheduledBatchBean.java:792) com.riskintegrator.slsb.ScheduledBatchBean.ejbTimeout(ScheduledBatchBean.java:957) weblogic.ejb.container.timer.TimerImpl.timerExpired(TimerImpl.java:219) ProcessAssessment(AssessmentScoreBD.java:36)

^-持有锁: weblogic.ejb.container.timer.TimerImpl@12c8e34thin lock weblogic.timers.internal.TimerImpl.run(TimerImpl.java:253) weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:516) weblogic.work.ExecuteThread.execute(ExecuteThread.java:198) weblogic.work.ExecuteThread.run(ExecuteThread.java:165)

EN

回答 1

Stack Overflow用户

发布于 2012-02-23 13:09:36

线程转储显示,当从Server接收回数据时,线程被卡住超过600秒(10分钟)。

在我的prev经验中,这可能是一个长期运行的DB查询,也可能是Weblogic和数据库之间的间歇性连接故障,使得套接字处于一种模糊状态。

这是一次性的,还是在同一行的其他卡住线程上也可以使用相同的堆栈跟踪?如果是,则可能需要使用SQL查询分析器检查DB查询,或者在MS-SQL中与之等效。

如果是一次性的,那可能是网络问题

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9409496

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档