Re: Definition of REPEATABLE READ

Поиск
Список
Период
Сортировка
От Thomas Munro
Тема Re: Definition of REPEATABLE READ
Дата
Msg-id CA+hUKG+vNRnokCFWh13JTp-uPXYEBP2Vft+rX34UQnZnOnBhSg@mail.gmail.com
обсуждение исходный текст
Ответ на Definition of REPEATABLE READ  ("Peter J. Holzer" <hjp-pgsql@hjp.at>)
Список pgsql-general
On Mon, Jun 22, 2020 at 12:25 AM Peter J. Holzer <hjp-pgsql@hjp.at> wrote:
> I've read http://jepsen.io/analyses/postgresql-12.3 which reports a
> problem in PostgreSQL's SERIALIZABLE isolation leven (which has since been
> fixed) and also shows an example of a violation of what they consider to
> be the correct definition of REPEATABLE READ.

In response to that report, we added a paragraph to the manual to
state explicitly that what we offer is snapshot isolation:

https://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=1575fbf1ac3c8464b2dade245deff537a3aa2498

https://www.postgresql.org/docs/devel/transaction-iso.html#XACT-REPEATABLE-READ

> Since those papers are now 25 and 20 years old, respectively, and there
> have been several revisions of the SQL standard in the meantime, has the
> SQL committee come around to that view (SQL/2003 seems unchanged, I
> couldn't find a later revision online)? And if it has, did it follow
> those definitions or come up with different ones (it seems to me that
> G2-item is much stronger that warranted by the wording in the standard)?

SQL:2016 is the latest, and I don't have it to hand right now, but
SQL:2011 still defined four degrees of isolation in terms of the three
phenomena (pages 133-135 of part II, "Foundations", at least in the
draft copy you can find on the net).

As for what else PostgreSQL should do about this historical confusion,
I suspect that a patch to pgsql-hackers to accept the name SNAPSHOT
ISOLATION as an alternative would be popular, and we could probably
even spin it as the "true" name of the level (while still accepting
REPEATABLE READ; there is no point in breaking that), and maybe add a
second table to the manual's Transaction Isolation section to cover
the later formalisations in a digested user friendly format (if that
is possible).



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

Предыдущее
От: Laurenz Albe
Дата:
Сообщение: Re: Hiding a GUC from SQL
Следующее
От: Sankar P
Дата:
Сообщение: DISTINCT on jsonb fields and Indexes