Re: Major features for 9.1 - Mailing list pgsql-advocacy

From Kevin Grittner
Subject Re: Major features for 9.1
Date
Msg-id 4D99F855020000250003C262@gw.wicourts.gov
Whole thread Raw
In response to Re: Major features for 9.1  (Jeff Davis <pgsql@j-davis.com>)
Responses Re: Major features for 9.1
Re: Major features for 9.1
List pgsql-advocacy
Jeff Davis <pgsql@j-davis.com> wrote:
> On Mon, 2011-04-04 at 07:20 -0500, Kevin Grittner wrote:
>>> a) a two-line explanation of what the feature is and why it's
>>> valuable (for the release notes, etc.)
>>> b) a wiki page with a more detailed explaination and examples
>>> oriented towards the beginning-to-intermediate PostgreSQL user.
>>>
>>> Volunteers?
>>
>> I volunteer for SSI.
>
> The way I think about SSI is that it automatically detects live
> race conditions in your SQL transactions at runtime; and protects
> you by safely rolling some of them back (which can be retried
> safely).
>
> Maybe something along those lines?

That is very accessible to an IT manager who's not a database
expert, and conceptually very clean.  It doesn't directly address
what's innovative about it, though, nor does it directly address why
it's valuable -- although one could infer both through a close
reading.

To extend that such that the innovative nature and benefits are more
explicitly stated, perhaps:

SSI allows you to enforce arbitrarily complex user-defined business
rules within the database without blocking, by automatically
detecting live race conditions in your SQL transactions at runtime.
It protects you by safely rolling some of them back (which can be
retried safely).

It's more than two lines, but I'm not immediately able to see what
to cut.

By the way, I did some google searches to try to find a prior
production quality implementation, and have so far not found any.  I
have discovered that SSI is a very popular TLA, including its use
for something called Server Side Includes (SSI.php) which is a
popular enough technology with databases for people to be listing
years of experience with it on their LinkedIn pages.  I don't know
how much of a problem that might be.  I guess at a minimum we should
add Serializable Snapshot Isolation to the Wikipedia SSI page:

http://en.wikipedia.org/wiki/SSI

Maybe we shouldn't use SSI without spelling out Serializable
Snapshot Isolation, to avoid confusion.

-Kevin

pgsql-advocacy by date:

Previous
From: Jeff Davis
Date:
Subject: Re: Major features for 9.1
Next
From: Aidan Van Dyk
Date:
Subject: Re: Major features for 9.1