В PostgreSQL по умолчанию реализован уровень изоляции Read Committed, потому что он удобен для большинства приложений. 5 Этот режим быстр и прост в использовании, обрыв транзакции возможен только в случае сбоя, а не для предотвращения несогласованности. 25
Однако он подходит не для всех случаев: приложениям, выполняющим сложные запросы и изменения, может потребоваться более строго согласованное представление данных, чем то, что даёт Read Committed. 2
Также в PostgreSQL реализован многоверсионный вариант протокола, что позволяет строить снимок данных, используя имеющиеся версии, и обходиться минимумом блокировок. 5 Фактически блокируется только повторное изменение одной и той же строки, а все остальные операции выполняются одновременно: пишущие транзакции никогда не блокируют читающих транзакций, а читающие никогда не блокируют никого. 5