Search your topic here

Conflict Serializability


Instructions li and lj of transactions Ti and Tj respectively, conflict if and only if there exists some item Q accessed by both li and lj, and at least one of these instructions wrote Q.

1. li = read(Q),  lj = read(Q).   li and lj don’t conflict.
2. li = read(Q),  lj = write(Q).  They conflict.
3. li = write(Q), lj = read(Q).   They conflict
4. li = write(Q), lj = write(Q).  They conflict

A conflict between li and lj forces a (logical) temporal order between them.  If li and lj are consecutive in a schedule and they do not conflict, their results would remain the same even if they had been interchanged in the schedule.