Re: Potential G2-item cycles under serializable isolation

From: Andres Freund <andres(at)anarazel(dot)de>
To: Thomas Munro <thomas(dot)munro(at)gmail(dot)com>
Cc: Kyle Kingsbury <aphyr(at)jepsen(dot)io>, Peter Geoghegan <pg(at)bowt(dot)ie>, Kevin Grittner <kgrittn(at)gmail(dot)com>, Jeff Davis <pgsql(at)j-davis(dot)com>, PostgreSQL mailing lists <pgsql-bugs(at)lists(dot)postgresql(dot)org>
Subject: Re: Potential G2-item cycles under serializable isolation
Date: 2020-06-11 19:47:58
Message-ID: 20200611194758.6ihcdar3inoeegkd@alap3.anarazel.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

On 2020-06-11 12:30:23 -0700, Andres Freund wrote:
> Hi,
>
> On 2020-06-11 17:40:55 +1200, Thomas Munro wrote:
> > + <para>
> > + The Repeatable Read isolation level is implemented using a technique
> > + known in academic database literature and in some other database products
> > + as <firstterm>Snapshot Isolation</firstterm>. Differences in behavior
> > + may be observed when compared with systems using other implementation
> > + techniques. For a full treatment, please see
> > + <xref linkend="berenson95"/>.
> > + </para>
>
> Could it be worthwhile to narrow the "differences in behaviour" bit to
> read-write transactions? IME the biggest reason people explicitly use RR
> over RC is to avoid phantom reads in read-only transactions. Seems nicer
> to not force users to read an academic paper to figure that out?

But, on second thought, it might be too difficult to phrase this
concisely and correctly, given the annoying issue of SI allowing for
read-only transactions to observe violations of serializability. I don't
think that's a RR violation, but maybe it could be understood as being
about serializability too easily?

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Andres Freund 2020-06-11 19:54:36 Re: Potential G2-item cycles under serializable isolation
Previous Message Andres Freund 2020-06-11 19:30:23 Re: Potential G2-item cycles under serializable isolation