Re: synchronized snapshots

Поиск
Список
Период
Сортировка
От Kevin Grittner
Тема Re: synchronized snapshots
Дата
Msg-id 4E48ED30020000250003FEFA@gw.wicourts.gov
обсуждение исходный текст
Ответ на Re: synchronized snapshots  (Simon Riggs <simon@2ndQuadrant.com>)
Список pgsql-hackers
Simon Riggs <simon@2ndQuadrant.com> wrote:
> Joachim Wieland <joe@mcknight.de> wrote:
>> BEGIN TRANSACTION ISOLATION LEVEL REPEATABLE READ (SNAPSHOT =
>> '000003A1-1');
> 
> I don't see the need to change the BEGIN command, which is SQL
> Standard.
No, it's not standard.
To quote from our docs at:
http://www.postgresql.org/docs/9.0/interactive/sql-begin.html#AEN58214
| BEGIN is a PostgreSQL language extension. It is equivalent to the
| SQL-standard command START TRANSACTION, whose reference page
| contains additional compatibility information.
| 
| Incidentally, the BEGIN key word is used for a different purpose
| in embedded SQL. You are advised to be careful about the
| transaction semantics when porting database applications. 
In checking the most recent standards draft I have available, it
appears that besides embedded SQL, this keyword is also used in the
standard trigger declaration syntax.  Using BEGIN to start a
transaction is a PostgreSQL extension to the standard.  That said,
if we support a feature on the nonstandard BEGIN statement, we
typically add it as an extension to the standard START TRANSACTION
and SET TRANSACTION statements.  Through 9.0 that consisted of
having a non-standard default for isolation level and the ability to
omit commas required by the standard.  In 9.1 we added another
optional transaction property which defaults to standard behavior:
DEFERRABLE.
If we're talking about a property of a transaction, like the
transaction snapshot, it seems to me to be best to support it using
the same statements we use for other transaction properties.
-Kevin


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: walprotocol.h vs frontends
Следующее
От: Magnus Hagander
Дата:
Сообщение: Re: walprotocol.h vs frontends