zoukankan      html  css  js  c++  java
  • Lock wait timeout exceeded; try restarting transaction

    2016-08-05 09:21:52 [com.zhishi.common.controller.BaseController]-[ERROR] 
    ### Error updating database.  Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLTransactionRollbackException: Lock wait timeout exceeded; try restarting transaction
    ### The error may involve com.zhishi.dal.mapper.order.BizOrderMapper.updateByExampleSelective-Inline
    ### The error occurred while setting parameters
    ### SQL: update tb_biz_order      SET tid = ?,                       orderNO = ?,                       product_id = ?,                       product_code = ?,                       product_name = ?,                                                   loan_amount = ?,                       loan_limit = ?,                                     sum_amount = ?,                       downpayment_cost = ?,                       service_cost = ?,                       gps_cost = ?,                       mortgage_cost = ?,                       deposit_cost = ?,                       visits_cost = ?,                       total_cost = ?,                       distributor_rebate = ?,                       bank_finance = ?,                       apply_no = ?,                       apply_uid = ?,                       apply_name = ?,                       apply_role_id = ?,                       mortgage_corp_id = ?,                              branch_corp_id = ?,                       be_branch_corp = ?,                       teamleader_id = ?,                       be_teamleader = ?,                       team_id = ?,                       be_team = ?,                                     visit_order = ?,                       order_state = ?,                       loan_state = ?,                       final_amount = ?,                              final_limit = ?,                              create_date = ?,                       update_by = ?,                       update_date = ?,                              version = ?,                       state = ?                     WHERE (  tid = ? )
    ### Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLTransactionRollbackException: Lock wait timeout exceeded; try restarting transaction
    ; SQL []; Lock wait timeout exceeded; try restarting transaction; nested exception is com.mysql.jdbc.exceptions.jdbc4.MySQLTransactionRollbackException: Lock wait timeout exceeded; try restarting transaction
    com.mysql.jdbc.exceptions.jdbc4.MySQLTransactionRollbackException: Lock wait timeout exceeded; try restarting transaction

    数据锁导致业务功能无法正常执行。

    解决方案:

    找到对应的锁Thead id ,然后kill掉,再去执行正常的代码逻辑。

    SELECT * FROM information_schema.innodb_trx
    
    KILL 11305;	

    导致锁的原因可以是代码逻辑有漏洞,同时也适当调试下my.ini的文件配置大小。

    【微信公众号里搜索usgrouping】

    扫一扫关注公众号,获取软件开发项目实战资讯,避开开发路上的哪些坑,快速进阶成长。

     
    成长的乐趣,在于分享!
    大龄程序员,一路走来,感慨颇多。闲暇时写写字,希望能给同行人一点帮助。
    本文版权归作者growithus和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    几种参数传递问题(读c++ primer plus)
    开源技术知识
    指针、引用与句柄(综合别人博客,方便大家和自己学习)
    转OpenGLhttp://www.zwqxin.com/archives/opengl.html
    我电脑上安装的软件(XP系统,GIS专业)
    回忆照片
    Richfaces为何那么“慢”?
    Windows和Linux下Java程序开发入门
    MiniOA项目介绍及源代码下载(Java JSF B/S)
    年会抽奖程序代码讲解(c#版)
  • 原文地址:https://www.cnblogs.com/growithus/p/11012242.html
Copyright © 2011-2022 走看看