) Check the given schedule for conflict serializability:
S1: R1(X) R1(Y) R2(X) R2(Y) W2(Y) W1(X)
To check for conflict serializabilty, we will draw precedence graph for a schedule. If precedence graph contains cycle, the schedule is not conflict serializable else schedule is conflict serializable.
For schedule 1, r1(Y) and w2(Y) are conflicting operations ( operations by different transaction on same data item and atleast one operation is write operation). So, an edge is drawn from T1 to T2 (as r1(Y) is executed before w2(Y)). Similarly, r2(X) and w1(X) are conflicting operations. So, an edge is drawn from T2 to T1 (as r2(X) is executed before w1(X)). As we can see from figure 1, precedence graph contains cycle, so S1 is not conflict serializable.
Comments
Leave a comment