Типы изоляции транзакций?

Middle
1.1k просмотров
AFK Offer AI

Четыре уровня по стандарту SQL:

1. Read Uncommitted — видны незакоммиченные данные (dirty reads). Почти не используется. 2. Read Committed — видны только закоммиченные данные. Дефолт в PostgreSQL. Возможны non-repeatable reads. 3. Repeatable Read — повторное чтение возвращает те же данные. Возможны phantom reads (новые строки). 4. Serializable — полная изоляция, как будто транзакции выполняются последовательно. Самый медленный.

В PostgreSQL Repeatable Read также защищает от фантомных чтений (через MVCC/SSI). Чем выше уровень — тем больше блокировок и ниже производительность.

Следующий вопрос

Что такое errgroup?