Re: incoherent view of serializable transactions

From: Peter Eisentraut <peter_e(at)gmx(dot)net>
To: pgsql-hackers(at)postgresql(dot)org
Cc: Gregory Stark <stark(at)enterprisedb(dot)com>, "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>, "Heikki Linnakangas" <heikki(dot)linnakangas(at)enterprisedb(dot)com>, "Emmanuel Cecchet" <manu(at)frogthinker(dot)org>, "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Subject: Re: incoherent view of serializable transactions
Date: 2009-01-03 23:37:09
Message-ID: 200901040137.10752.peter_e@gmx.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Sunday 04 January 2009 00:53:51 Gregory Stark wrote:
> Peter Eisentraut <peter_e(at)gmx(dot)net> writes:
> > On Wednesday 31 December 2008 02:33:26 Kevin Grittner wrote:
> >> I'm still working on section "Serializable Isolation versus True
> >> Serializability", but here are all the changes I can see which precede
> >> it. Has the review of the SQL specs convinced everyone that this much
> >> is appropriate?
> >
> > I don't agree with these changes. You make it sound like serializability
> > is an additional condition on the serializable isolation level on top of
> > the no-phantom-reads condition. I think that is not true, both
> > mathematically and from the wording of the SQL standard. It is an
> > equivalent condition or a consequence, depending on how you view it.
>
> The standard explicitly says that the no-phantom-reads condition is a
> consequence of the serializability constraint. Did you miss that whole
> discussion this past week?

The SQL standard says it in about three different ways, and textbooks might
define it an three more ways. That still doesn't negate my concern with the
way his patch phrases the issue.

A language lawyer might also point out that the note that contains
the "explicitness" isn't actually part of the formal standard. The only
thing that the standard formally defines are the excluded phenomena.

More to the point, think about how a user might want to think about these
issues.

"The standard also requires that serializable transactions behave as though
[...]" --- User: The standard requires it, but is it also implemented?
(Apparently not, but that is explained somewhere else.)

"is a natural consequence of the fact" --- There is nothing natural about any
of this. Why is it a consequence and how?

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruce Momjian 2009-01-04 03:34:37 Time to finalize patches for 8.4 beta
Previous Message Peter Eisentraut 2009-01-03 22:56:13 Re: Significantly larger toast tables on 8.4?