После
create table l (id int primary key, val int);
insert into l values (0, 0);
и инициализации двух сеансов оракула
alter session set isolation_level=serializable;
следующая последовательность приводит к ORA-08177: can't serialize access for this transaction
.
session 1 session 2
-----------------------------------+-----------------------------------
lock table l in exclusive mode
-----------------------------------+-----------------------------------
lock table l in exclusive mode
-----------------------------------+-----------------------------------
update l set val = 1 where id = 0 [blocked]
-----------------------------------+-----------------------------------
commit [blocked]
-----------------------------------+-----------------------------------
update l set val = 2 where id = 0
-----------------------------------+-----------------------------------
[ORA-08177]
Почему? Это выглядит совершенно серийно для меня.