Serialisability

The purpose of this tutorial is to assess and reinforce your knowledge of the characterisation of schedules with respect to serialisability.


Exercise 1

For each of the following schedules state whether they are conflict serialisable and or recoverable. Assess conflict serialisability by producing the corresponding precedence graph. For those schedule that are serialisable, indicate the equivalent serial schedule.

Sa: r1(balx); r2(balx); w1(balx); w2(balx); commt(T1); commit(T2);

Sb: r1(balx); r2(baly); w3(balx); r2(balx); r1(baly); commit(T1);
      commit(T
2);

Sc: r1(balx); w2(balx); w1(balx); abort(T2); commit(T1);

Sd: w1(balx); r2(balx); w1(balx); commit(T2); abort(T1);

Se: r1(balx); w2(balx); w1(balx); r3(balx); commt(T1); commit(T2); commit(T3);


Optional exercise

Consider the three transactions T1, T2, and T3. and the schedule S1 below. Determine whether S1 is strict, cascadeless, recoverable or non recoverable. Identify whether it is non serialisable.

T1: r1(X); r1(Z); w1(X);

T2: r2(Z); r2(Y); w2(Z); w2(Y);

T3: r3(X); r3(Y); w3(Y);

S1: r1(X); r2(Z); r3(X); r1(Z); r2(Y);  r3(Y); w1(X); c1; w2(Z); w3(Y); w2(Y); c3; c2;


Lectures:
Tue: 14.00 to 15.00 (LIFS-LT3) 
Thu: 10.00 to 11.00 (SHER-LT1) 
Fri:   15.00 to 16.00 (SHER-LT1)
Labs:
One session per week in Lab 4, G. Holt Building, starting from week 3 (Week starting on October 10th).
Check your slot on Spider!
Lab timetable:
Mon: 12.00 - 13.00; 13.00 - 14.00 
Tue: 10.00 - 11.00
Thu: 13.00 - 14.00; 15.00 - 16.00; 16.00 -17.00
Fri: 12.00 - 13.00; 13.00 - 14.00
Surgeries:
Tue: 15.00 to 16.00
Thu: 11.00 to 12.00
Assignments:
Assignment 1 (Deadline XX/XX/XX);
Assignment 2 (Deadline XX/XX/XX);
Assessment weightings:
80% multiple choice exam;
10% Practical Assignment 1;
10% Practical Assignment 2.