Błąd serializacji
Błąd zwracany przez bazę danych, gdy przy izolacji SERIALIZABLE wykryje, że współbieżnych transakcji nie da się ułożyć w poprawną kolejność szeregową. Zamiast dopuścić anomalię, jedna transakcja jest przerywana („could not serialize access”), a aplikacja musi ją ponowić.
Mechanizm: Serializable Snapshot Isolation (SSI) w PostgreSQL pozwala transakcjom działać optymistycznie na ich migawkach MVCC i śledzi zależności odczytu/zapisu między nimi; gdy wykryje wzorzec łamiący szeregowalność (np. write skew), przerywa jedną z transakcji błędem serializacji. Jest to więc normalne i oczekiwane przy SERIALIZABLE — nie błąd w kodzie. Konsekwencja: aplikacja MUSI mieć pętlę ponawiania, która uruchamia transakcję od nowa po tym błędzie. Zysk: pełna szeregowalność (bez subtelnych anomalii) bez ciężkich blokad, za cenę ponowień przy dużej rywalizacji. Podobne do optymistycznej kontroli współbieżności.