目录
前言问题描述
主要的异常日志信息:
com.mysql.cj.jdbc.exceptions.MySQLTransactionRollbackException: Deadlock found when trying to get lock; try restarting transaction
主要发生原因
主要发生的是这张表: news_event
问题是发生了死锁,具体的原因,我们开发定位是使用索引删除数据,导致间隙锁碰巧发生还没有释放的瞬间对该表进行其他的额增删改操作。这个异常信息是在用索引news_id 删除表数据之后,进行插入数据,导致锁表,用索引删除数据会导致间隙锁,在这个间隙会锁表。后续插入正好锁表了。