Re: User-facing aspects of serializable transactions

From: "Markus Wanner" <markus(at)bluegap(dot)ch>
To: "Greg Stark" <stark(at)enterprisedb(dot)com>
Cc: "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>, "Heikki Linnakangas" <heikki(dot)linnakangas(at)enterprisedb(dot)com>, "Jeff Davis" <pgsql(at)j-davis(dot)com>, "<pgsql-hackers(at)postgresql(dot)org>" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: User-facing aspects of serializable transactions
Date: 2009-06-02 07:17:00
Message-ID: 20090602091700.541050vnsk1wx33g@mail.bluegap.ch
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

Quoting "Greg Stark" <stark(at)enterprisedb(dot)com>:
> No, I'm not. I'm questioning whether a serializable transaction
> isolation level that makes no guarantee that it won't fire spuriously
> is useful.

It would certainly be an improvement compared to our status quo, where
truly serializable transactions aren't supported at all. And it seems
more promising than heading for a perfect *and* scalable implementation.

> Heikki proposed a list of requirements which included a requirement
> that you not get spurious serialization failures

That requirement is questionable. If we get truly serializable
transactions (i.e. no false negatives) with reasonably good
performance, that's more than enough and a good step ahead.

Why care about a few false positives (which don't seem to matter
performance wise)? We can probably reduce or eliminate them later on.
But eliminating false negatives is certainly more important to start
with.

What I'm more concerned is the requirement of the proposed algorithm
to keep track of the set of tuples read by any transaction and keep
that set until sometime well after the transaction committed (as
questioned by Neil [1]). That doesn't sound like a negligible overhead.

Maybe the proposed algorithm has to be applied to pages instead of
tuples, as they did it in the paper for Berkeley DB. Just to keep that
overhead reasonably low.

Regards

Markus Wanner

[1]: Neil Conway's blog, Serializable Snapshot Isolation:
http://everythingisdata.wordpress.com/2009/02/25/february-25-2009/

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Dimitri Fontaine 2009-06-02 08:37:28 Re: Suggested TODO: allow ALTERing of typemods without heap/index rebuild
Previous Message Marko Kreen 2009-06-02 07:13:24 Re: PostgreSQL Developer meeting minutes up