Obecně ne. Druhá transakce je pouze vkládání, takže pokud není třeba provést jedinečnou kontrolu indexu nebo jiný spouštěč, lze data vložit bezpodmínečně. V případě jedinečného indexu (včetně primárního klíče) se zablokuje, pokud obě transakce aktualizují řádky se stejnou hodnotou, např.:
-- Session 1 -- Session 2
CREATE TABLE t (x INT PRIMARY KEY);
BEGIN;
INSERT INTO t VALUES (1);
BEGIN;
INSERT INTO t VALUES (1); -- blocks here
COMMIT;
-- finally completes with duplicate key error
Věci jsou méně zřejmé v případě aktualizací, které mohou ovlivnit vložení jinou transakcí. Chápu, že PostgreSQL v tomto případě ještě nepodporuje "skutečnou" serializaci. Nevím, jak běžně to podporují jiné systémy SQL.
Viz http://www.postgresql.org/docs/current/interactive/ mvcc.html