标签: sql transactions
在多个事务中设置隔离级别时,可能导致中止事务的原因是什么?
我假设隔离级别通过适当的锁定来定义允许/不允许发生哪些异常,而不是通过中止事务 - 这是正确的假设吗?
到目前为止,我能想到的唯一原因是执行死锁和其中一个事务必须中止。
答案 0 :(得分:1)
如果一个事务T1请求某个资源R1被另一个事务T2锁定,那么T1可以超时并中止。
这还不是僵局。死锁是指T1和T2都停止运转,每个人都在等待另一个释放另一个锁定的锁定。