可串行化调度
可串行化调度:多个事务的并发执行是正确的,当且仅当其结果与按某一次串行的执行这些事务时的结果相同。
可串行化:是并发事务正确调度的准则;一个给定的并发调度,当且仅当它是可串行化的,才认为是正确调度。
举个栗子:
存在事务T1:读B;A=B+1;写回A
同时存在事务T2:读A;B=A+1;写回B。(假设A、B的初值均为2)
存在正确的调度(a):
T1 | T2 |
---|---|
Slock B | |
Y=R(B)=2 | |
Unlock B | |
Xlock A | |
A=Y+1=3 | |
W(A) | |
Unlock A | |
Slock A | |
X=R(A)=3 | |
Unlock A | |
Xlock B | |
B=X+1=4 | |
W(B) | |
Unlock B |