Re: Another exception (Transaction level)

From: Fernando Nasser <fnasser(at)redhat(dot)com>
To: Dmitry Tkach <dmitry(at)openratings(dot)com>
Cc: Ole Streicher <ole-usenet-08(at)gmx(dot)net>, pgsql-jdbc(at)postgresql(dot)org, Paul Thomas <paul(at)tmsl(dot)demon(dot)co(dot)uk>
Subject: Re: Another exception (Transaction level)
Date: 2003-07-28 15:03:25
Message-ID: 3F253B3D.3010700@redhat.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

Dmitry Tkach wrote:
> Fernando Nasser wrote:
>
>> Ole Streicher wrote:
>>
>>>
>>> I'd propose to put this information directly into the table - either
>>> by removing the two not supported levels, or by flagging them somehow.
>>>
>>
>> As I've mention before they _are_ supported and as _per standard_.
>> The standard allows implementations to provide a higher isolation
>> level in place of any lower level that is not implemented.
>
>
> The statement:
>
> SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
>
> results in an error.
> This means, that this particular isolation level is *not* supported.
>
> The "compatibility' section of the 'SET TRANSACTION' charpter in
> postgres SQL reference seems to disagree with you too:
>

If it disagrees it is not with me, but with the committee who wrote the
SQL standard. But I don't think it disagrees that much (see below).

> "PostgreSQL does not provide the isolation levels READ UNCOMMITTED and
> REPEATABLE READ. "
>

It can't provide REPEATABLE READ. It could/should make it a synonym for
SERIALIZABLE.

And SERIALIZABLE, which is a misnomer, in PostgreSQL does not actually
"serialize" anything, although it does provide the required level of
isolation required in the standard, I believe.

READ UNCOMMITTED should be accepted and be a synonym for READ COMMITTED
as allowed (and suggested) by the SQL standard.

> Also, the Appendix "C.2" to the User's Guide - "Unsupported features"
> has both REPEATABLE READ (F111-01) and READ UNCOMMITTED (F111-03) listed
> as 'unsupported'.
>

It is unsupported because they give you syntax errors. Perhaps people
preferred not to use the allowances in the standard because it could
confuse people as not all users know enough SQL to understand that.

> Also, I don't know what standard really says about this ... but I have
> never seen a database, that would claim that it supports any isolation
> level just because it supports a higher one... To me, such definition of
> 'support' doesn't, make any sense at all...
>

If you don't want to look at the standard then look at Date's book.

And, again, I only _read_ the standard, I did not wrote it. Please send
your complains to the SQL committee.

--
Fernando Nasser
Red Hat Canada Ltd. E-Mail: fnasser(at)redhat(dot)com
2323 Yonge Street, Suite #300
Toronto, Ontario M4P 2C9

In response to

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Dmitry Tkach 2003-07-28 15:38:45 Re: Another exception (Transaction level)
Previous Message Dmitry Tkach 2003-07-28 14:32:54 Re: Another exception (Transaction level)