Re: Error on failed COMMIT

Поиск
Список
Период
Сортировка
От Vik Fearing
Тема Re: Error on failed COMMIT
Дата
Msg-id f99145dd-ec52-f2dd-cd25-39300d9bc09f@postgresfriends.org
обсуждение исходный текст
Ответ на Re: Error on failed COMMIT  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
On 12/02/2020 00:27, Tom Lane wrote:
> Vik Fearing <vik@postgresfriends.org> writes:
>> On 11/02/2020 23:35, Tom Lane wrote:
>>> So I assume you're imagining that that would leave us still in
>>> transaction-aborted state, and the session is basically dead in
>>> the water until the user thinks to issue ROLLBACK instead?
> 
>> Actually, I was imagining that it would end the transaction as it does
>> today, just with an error code.
>> This is backed up by General Rule 9 which says "The current
>> SQL-transaction is terminated."
> 
> Hm ... that would be sensible, but I'm not entirely convinced.  There
> are several preceding rules that say that an exception condition is
> raised, and normally you can stop reading at that point; nothing else
> is going to happen.  If COMMIT acts specially in this respect, they
> ought to say so.

Reading some more, I believe they do say so.

SQL:2016-2 Section 4.41 SQL-transactions:

    If an SQL-transaction is terminated by a <rollback statement> or
    unsuccessful execution of a <commit statement>, then all changes
    made to SQL-data or schemas by that SQL-transaction are canceled.

This to me says that an unsuccessful COMMIT still terminates the
transaction.
-- 
Vik Fearing



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

Предыдущее
От: Vladimir Sitnikov
Дата:
Сообщение: Re: Error on failed COMMIT
Следующее
От: Alexander Korotkov
Дата:
Сообщение: Re: Improve search for missing parent downlinks in amcheck