修改一个接口实现类业务代码,并进行debug调试时报错
- Cause: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction
该异常可能出现的场景有
1.在同一事物内对同一条记录进行insert和update操作。
2.分布式服务操作同一条记录。
3.高并发。
4.debug的时候事务还没有执行完,就重启服务,然后又执行了一次(本次报错产生原因)
解决方案
SELECT * FROM information_schema.INNODB_TRX;
kill 4523949;
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/252d1aa8106cd7038e22d100be8be6f8.png)
删除未结束的事务即可