Re: BUG #11732: Non-serializable outcomes under serializable isolation

From: Peter Bailis <pbailis(at)cs(dot)berkeley(dot)edu>
To: Kevin Grittner <kgrittn(at)ymail(dot)com>
Cc: "pgsql-bugs(at)postgresql(dot)org" <pgsql-bugs(at)postgresql(dot)org>
Subject: Re: BUG #11732: Non-serializable outcomes under serializable isolation
Date: 2014-10-28 08:07:40
Message-ID: CALgH=-M-o7T8FqNgKh8TENqtThRx7CPEtW3fJztTZaa4Ox9WCA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

I spent some more time playing with the PL/pgSQL-based workload. I find
that I'm still able to trigger the behavior if I:

a.) Drop the primary key column entirely from the table and the stored
procedure (basically, just perform read-then-insert on the single "key"
column).

b.) Change the "key" column from a varchar to an integer.

I started to wonder if this suggests an issue with page-level locking on a
non-indexed column. So, I recompiled PostgreSQL 9.3.5 with blocksizes of
32768 (./configure --with-blocksize=32) and 1024 and didn't have any
discernible effect (was able to reproduce). I also directly modified the
configure script to allow a 1MB blocksize and was again able to reproduce
the behavior.

Have you had any luck reproducing this behavior?

Thanks,
Peter

On Tue, Oct 21, 2014 at 11:28 AM, Kevin Grittner <kgrittn(at)ymail(dot)com> wrote:

> Peter Bailis <pbailis(at)cs(dot)berkeley(dot)edu> wrote:
>
> > I just re-ran the workload with max_pred_locks_per_transaction set
> > (in postgresql.conf) to each of 1280, 12800, and 128000 and
> > observed the duplicate behavior under each setting.
> Thanks for checking!
>
> Looking into it....
>
> --
> Kevin Grittner
> EDB: http://www.enterprisedb.com
> The Enterprise PostgreSQL Company
>

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Romu Hu 2014-10-28 09:21:49 Need guidance on regression.diffs
Previous Message Krystian Bigaj 2014-10-28 08:04:05 Re: BUG #11805: Missing SetServiceStatus call during service shutdown in pg_ctl (Windows only)