small_brook 2019-08-14 10:47 采纳率: 0%
浏览 310

Jboss+Oracle Unable to obtain lock in 60 seconds

1.启了两个线程,select查询语句访问数据库报无法获取锁,求解决方案。

2.java.lang.reflect.UndeclaredThrowableException

    at com.sun.proxy.$Proxy2483.selectRrcMparmList(Unknown Source)
    at com.murong.ecp.app.rrc.service.RskGradeRatingService.gradeRating(RskGradeRatingService.java:78)
    at com.murong.ecp.app.rrc.action.RskGradeThread.run(RskGradeThread.java:51)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)

Nested Exception:

215016:215016-查询出错, ErrorCode:[0], SQLState:[null]

       com.yuangou.ecp.bp.database.YGJDBCProvider.execQueryBindLimit(YGJDBCProvider.java:132)
       com.yuangou.ecp.bp.database.YGDatabaseUtil.execQueryBindLimit(YGDatabaseUtil.java:110)
       com.yuangou.ecp.biz.transengine.sqlsession.YGSqlSession.selectList(YGSqlSession.java:281)
       com.yuangou.ecp.biz.transengine.sqlsession.YGSqlSession.selectList(YGSqlSession.java:194)
       com.yuangou.ecp.biz.transengine.sqlsession.MapperProxy.invoke(MapperProxy.java:69)
       com.sun.proxy.$Proxy2483.selectRrcMparmList(Unknown Source)
       com.murong.ecp.app.rrc.service.RskGradeRatingService.gradeRating(RskGradeRatingService.java:78)
       com.murong.ecp.app.rrc.action.RskGradeThread.run(RskGradeThread.java:51)
       java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
       java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
       java.lang.Thread.run(Thread.java:745)

Nested Exception:

java.sql.SQLException: Unable to obtain lock in 60 seconds: org.jboss.resource.adapter.jdbc.local.LocalManagedConnection@8176821

       org.jboss.resource.adapter.jdbc.BaseWrapperManagedConnection.tryLock(BaseWrapperManagedConnection.java:267)
       org.jboss.resource.adapter.jdbc.WrappedConnection.lock(WrappedConnection.java:79)
       org.jboss.resource.adapter.jdbc.WrappedConnection.prepareStatement(WrappedConnection.java:237)
       com.yuangou.ecp.bp.database.YGJDBCProvider.execQueryBindLimit(YGJDBCProvider.java:82)
       com.yuangou.ecp.bp.database.YGDatabaseUtil.execQueryBindLimit(YGDatabaseUtil.java:110)
       com.yuangou.ecp.biz.transengine.sqlsession.YGSqlSession.selectList(YGSqlSession.java:281)
       com.yuangou.ecp.biz.transengine.sqlsession.YGSqlSession.selectList(YGSqlSession.java:194)
       com.yuangou.ecp.biz.transengine.sqlsession.MapperProxy.invoke(MapperProxy.java:69)
       com.sun.proxy.$Proxy2483.selectRrcMparmList(Unknown Source)
       com.murong.ecp.app.rrc.service.RskGradeRatingService.gradeRating(RskGradeRatingService.java:78)
       com.murong.ecp.app.rrc.action.RskGradeThread.run(RskGradeThread.java:51)
       java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
       java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
       java.lang.Thread.run(Thread.java:745)
  • 写回答

1条回答 默认 最新

  • 憧憬blog 2023-03-15 05:30
    关注

    这个问题看起来像是在并发场景下出现的数据库锁竞争问题。建议您对数据库的表或索引进行优化以避免锁竞争。另外,您也可以尝试使用数据库连接池或缓存来减少对数据库的访问,从而减少锁竞争的可能性。此外,也需要检查代码实现,确保在并发场景中正确并且高效地使用数据库连接。至于 UndeclaredThrowableException,这个异常通常是由于在使用 Java 反射时出现的异常。建议您检查代码并确保反射调用时安全的。

    评论

报告相同问题?

悬赏问题

  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)