Thomas write rule
Template:S In informatica, nel campo dei database, la Thomas write rule è una regola relativa al controllo della concorrenza basata su timestamp.
Data una marca temporale o timestamp su una transazione T, che definiamo TS(T) e un "write timestamp" o timestamp di scrittura su un oggetto O, definito come WTS(O):
La regola dice che se TS(T) < WTS(O), la corrente azione di scrittura è stata resa obsoleta dalla più recente operazione di scrittura di O, che segue la scrittura corrente basandosi sull'ordinamento del Timestamp.
Dato uno schedule non-conflict serializable:
Ovvero: T1:R(A), T2:W(A), T2 Commit, T1: W(A), T1 Commit.
La Thomas Write Rule si basa sul fatto che la scrittura fatta da T1 su A non è mai vista da alcuna transazione e afferma quindi che lo schedule sopra è equivalente allo schedule riportato in seguito in cui T2 occorre strettamente dopo T1, e che perciò la scrittura di T1 può essere ignorata:
Ovvero: T1:R(A), T1: W(A), T1 Commit, T2:W(A), T2 Commit.
Questo schedule ha lo stesso effetto del primo ed è conflict serializzabile.