Re: SET TRANSACTION and SQL Standard - Mailing list pgsql-hackers

From Simon Riggs
Subject Re: SET TRANSACTION and SQL Standard
Date
Msg-id 1231517599.18005.462.camel@ebony.2ndQuadrant
Whole thread Raw
In response to Re: SET TRANSACTION and SQL Standard  (Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>)
Responses Re: SET TRANSACTION and SQL Standard  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
On Fri, 2009-01-09 at 17:11 +0200, Heikki Linnakangas wrote:
> Simon Riggs wrote:
> > On Fri, 2009-01-09 at 16:14 +0200, Peter Eisentraut wrote:
> >> Simon Riggs wrote:
> >>> I notice that we allow commands such as
> >>>
> >>> SET TRANSACTION read only read write read only;
> >>>
> >>> BEGIN TRANSACTION read only read only read only;
> >>>
> >>> Unsurprisingly, these violate the SQL Standard:
> >>> * p.977 section 19.1 syntax (1)
> >>> * p.957 section 17.3 syntax (2)
> >> Well, we allow a lot of things.  Violations of the SQL standard happen 
> >> when a command that appears in the standard doesn't do what the standard 
> >> says.  Allowing commands that are not in the standard is not a violation.
> > 
> > Except when the standard explicitly forbids it, as with the above.
> 
> No, it just means that the statement "SET TRANSACTION read only read 
> write read only;" doesn't conform to the standard, and it's therefore 
> implementation-dependent what it does. See the meaning of "shall" in 
> Syntax Rules, section "6.3.3.2 Terms denoting rule requirements".

which says

"If any condition required by Syntax Rules is not satisfied when the
evaluation of Access or General Rules is attempted and the
implementation is neither processing non-conforming SQL language nor
processing conforming SQL language in a non-conforming manner, then an
exception condition is raised: syntax error or access rule violation."

If we *choose* to be an SQL implementation that conforms to the SQL
standard, then it should throw an error. 

Of course, we can *choose* not to conform to the standard in this or any
case, but exactly why would we? I thought we had made a choice to
conform to the SQL Standard, unless we have specific reason not to.

-- Simon Riggs           www.2ndQuadrant.comPostgreSQL Training, Services and Support



pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: Improving compressibility of WAL files
Next
From: Tom Lane
Date:
Subject: Re: Improving compressibility of WAL files