Database Theory: Transaction serializability
Hy, I'm learning for my exams and came over the following question:
Take the History (or Schedule)
H = w1[x] w2[x] w2[y] c2 w1[y] w3[x] w3[y] c3 w1[z] c1
where w1[x]
means: Transaction 1 writes to Data-Object X (r1[x]
means read) and c1
means: Transaction 1 commits.
Why is this transaction view serializable?
For view Serializability the History H must be view-equivalent to a sequential executing of the transaction 1,2,3. So, futher, the last-writes of each data-Object must be the same as in a s开发者_运维知识库equential execution of the transaction of the History H. So the last-Writes of H are:
- Transation 3 for x and y and
- Transation 1 for z
But, in no sequential execution the last-writes are distributed like this, so the History H can't be view serializable.
Where is my mistake?
Thanks everyone.
Okay, found out myself: The last sentence if of course wrong:
In fact the sequential execution 1,2,3 leads to this History:
w1[x] w1[y] w1[z] c1 w2[x] w2[y] c2 w3[x] w3[y] c3
and the follogint last-Writes:
- Transaction 3 for x and y and
- Transaction 1 for z
which is the same than the last-writes of History H
精彩评论