Kevin Grittner wrote:
> Sent: Tuesday, October 11, 2016 10:00 PM
> To: Jason Dusek
> Cc: pgsql-general@postgresql.org
> Subject: Re: [GENERAL] SERIALIZABLE and INSERTs with multiple VALUES
>
> On Tue, Oct 11, 2016 at 2:29 PM, Jason Dusek <jason.dusek@gmail.com> wrote:
>
>> I notice the following oddity:
>
>> =# CREATE TABLE with_pk (i integer PRIMARY KEY);
>> CREATE TABLE
>
>> =# BEGIN;
>> BEGIN
>> =# INSERT INTO with_pk VALUES (2), (2) ON CONFLICT DO NOTHING;
>> ERROR: could not serialize access due to concurrent update
>> =# END;
>> ROLLBACK
>
> I don't see that on development HEAD. What version are you
> running? What is your setting for default_transaction_isolation?
The subject says SERIALIZABLE, and I can see it on my 9.5.4 database:
test=> CREATE TABLE with_pk (i integer PRIMARY KEY);
CREATE TABLE
test=> START TRANSACTION ISOLATION LEVEL SERIALIZABLE;
START TRANSACTION
test=> INSERT INTO with_pk VALUES (2), (2) ON CONFLICT DO NOTHING;
ERROR: could not serialize access due to concurrent update
Yours,
Laurenz Albe