s***@chittenden.org
2015-10-08 10:00:36 UTC
The following bug has been logged on the website:
Bug reference: 13667
Logged by: Sean Chittenden
Email address: ***@chittenden.org
PostgreSQL version: 9.4.4
Operating system: Linux/FreeBSD
Description:
A few weeks back I was pointed in the direction of a bug that appears to be
an SSI violation. The repro case below is written using bash and psql.
In a tight loop, we would expect 50% of these transactions to fail.
Instead, periodically we're seeing both transaction commit successfully.
The concern is that PostgreSQL thinks these transactions are commutable or
the SIREAD lock isn't erected correctly.
https://github.com/gfredericks/pg-serializability-bug
The two concurrent transactions required to tickle this bug are:
BEGIN TRANSACTION ISOLATION LEVEL SERIALIZABLE;
INSERT INTO things (id) VALUES ('A');
SELECT id FROM things;
COMMIT;
BEGIN TRANSACTION ISOLATION LEVEL SERIALIZABLE;
INSERT INTO things (id) VALUES ('B');
SELECT id FROM things;
COMMIT;
Cheers. -sc
Bug reference: 13667
Logged by: Sean Chittenden
Email address: ***@chittenden.org
PostgreSQL version: 9.4.4
Operating system: Linux/FreeBSD
Description:
A few weeks back I was pointed in the direction of a bug that appears to be
an SSI violation. The repro case below is written using bash and psql.
In a tight loop, we would expect 50% of these transactions to fail.
Instead, periodically we're seeing both transaction commit successfully.
The concern is that PostgreSQL thinks these transactions are commutable or
the SIREAD lock isn't erected correctly.
https://github.com/gfredericks/pg-serializability-bug
The two concurrent transactions required to tickle this bug are:
BEGIN TRANSACTION ISOLATION LEVEL SERIALIZABLE;
INSERT INTO things (id) VALUES ('A');
SELECT id FROM things;
COMMIT;
BEGIN TRANSACTION ISOLATION LEVEL SERIALIZABLE;
INSERT INTO things (id) VALUES ('B');
SELECT id FROM things;
COMMIT;
Cheers. -sc
--
Sent via pgsql-bugs mailing list (pgsql-***@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs
Sent via pgsql-bugs mailing list (pgsql-***@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs