[prev] 66 [next]

Checking Serializability (cont)

View serializability checking:

TC,i denotes transaction i in concurrent schedule
for each serial schedule S {
    TS,i denotes transaction i in serial schedule
    for each shared variable X {
        if TC,i reads same version of X as TS,i
            (either initial value or value written by Tj)
            continue
        else
            give up on this serial schedule
        if TC,i and TS,i write the final version of X
            continue
        else
             give up on this serial schedule
     }
     return "View serializable"
}
return "Not view serializable"