大梦想家

5年开发工程师,2年实施经理,X年售前顾问,......
数据加载中……
Lock wait timeout exceeded; try restarting transaction

   粗心大意,老犯错!

   今天上午在调试EJB3调用WebService时一直遇到MySQL报出的这个问题。郁闷坏了,只是执行了一句update而已,就导致这样错误… …

   经过半个小时排查,终于找到问题所在了。原因是分布式事务引起的。

   场景描述:

EJB3操作A表-->调用WebService-->WebService操作B表

    在操作A表的时候需要等待WebService的调用,如果没有异常,则可以提交事务,如果出现异常,则不能提交事务;

    在操作B表的时候需要处理异常;

    一个简单的分布式事务,一般情况下是没有问题的~但是由于我的粗心大意,做成了EJB3也在操作B表,这样就导致了表被锁死的情况出现~真是郁闷啊!



客户虐我千百遍,我待客户如初恋!

posted on 2009-04-23 21:41 阿南 阅读(4258) 评论(0)  编辑  收藏 所属分类: 工作心得EJB3


只有注册用户登录后才能发表评论。


网站导航: