Концепція здатності до впорядкування була вперше запропонована Есвараном у вигляді протоколу двофазної блокування.
Протокол двофазної блокування полягає в наступному:
1. Перед виконання будь-яких операцій з деяким об'єктом, транзакція повинна заблокувати цей об'єкт.
2. Після зняття блокування, транзакція не повинна накладати ніяких інших блокувань.
Транзакції, які використовуються в цьому протоколі, не розрізняються за типами і вважаються монопольними (тобто X-locks).
Теорема Есварана. Якщо всі транзакції в суміші підкоряються протоколу двофазної блокування, то для всіх чергуються графіків існує можливість упорядкування.
Протокол двофазної блокування характеризується двома фазами:
- 1 фаза - наростання блокувань. Під час цієї фази накладаються блокування, і проводиться робота з заблокованими об'єктами.
- 2 фаза - зняття блокувань. Під час цієї фази блокування тільки знімаються. Робота з раніше заблокованими даними може тривати.
Робота транзакції за таким протоколом можна представити схемою на малюнку 1:
Малюнок 1 Робота транзакції по протоколу двофазної блокування
На малюнку 2 показаний приклад транзакції, не підпорядкований протоколу двофазної блокування:
Малюнок 2 Транзакція, що не підкоряється протоколу двофазної блокування
На практиці, як правило, друга фаза зводиться до однієї операції завершення транзакції (або відкату транзакції) з одночасним зняттям всіх блокувань.
Слідство. Якщо деяка транзакція A не підкоряється протоколу двофазної блокування (і, отже, складається не менше ніж з двох операція блокування і розблокування), то завжди можна побудувати іншу транзакцію B, яка при чергується виконанні разом з A призводить до графіку, який не підлягає впорядкуванню і, відповідно, неправильного.