Re: ROLLBACK TO SAVEPOINT

Поиск
Список
Период
Сортировка
От Florian Pflug
Тема Re: ROLLBACK TO SAVEPOINT
Дата
Msg-id 972F3BA2-60A8-4B93-A4AB-D9C66CDCC12A@phlo.org
обсуждение исходный текст
Ответ на Re: ROLLBACK TO SAVEPOINT  (Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>)
Ответы Re: [spf:guess] Re: ROLLBACK TO SAVEPOINT  (Sam Vilain <sam@vilain.net>)
Список pgsql-hackers
On May 25, 2010, at 12:18 , Heikki Linnakangas wrote:
> On 25/05/10 13:03, Florian Pflug wrote:
>> On May 25, 2010, at 6:08 , Sam Vilain wrote:
>>> http://www.postgresql.org/docs/8.4/static/sql-savepoint.html
>>>
>>> Lead us to believe that if you roll back to the same savepoint name
>>> twice in a row, that you might start walking back through the
>>> savepoints.  I guess I missed the note on ROLLBACK TO SAVEPOINT that
>>> that is not how it works.
>>>
>>> Here is the section:
>>>
>>> SQL requires a savepoint to be destroyed automatically when another
>>> savepoint with the same name is established. In PostgreSQL, the old
>>> savepoint is kept, though only the more recent one will be used when
>>> rolling back or releasing. (Releasing the newer savepoint will cause the
>>> older one to again become accessible to ROLLBACK TO SAVEPOINT and
>>> RELEASE SAVEPOINT.) Otherwise, SAVEPOINT is fully SQL conforming.
>>
>> I'm confused. The sentence in brackets "Releasing the newer savepoint will cause the older one to again become
accessibleto ROLLBACK TO SAVEPOINT and RELEASE SAVEPOINT" implies that you *will* walk backwards through all the
savepointsnamed "a" if you repeatedly issue "ROLLBACK TO SAVEPOINT a", no? If that is not how it actually works, then
thiswhole paragraph is wrong, I'd say. 
>
> Releasing the newer savepoint will cause the older one to again become accessible, as the doc says, but rolling back
toa savepoint does not implicitly release it. You'll have to use RELEASE SAVEPOINT for that. 

Ah, now I get it. Thanks.

Would changing "Releasing the newer savepoint will cause ... " to "Explicitly releasing the newer savepoint" or maybe
even"Explicitly releasing the newer savepoint with RELEASE SAVEPOINT will cause ..." make things clearer? 

best regards,
Florian Pflug





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

Предыдущее
От: Stephen Frost
Дата:
Сообщение: Re: ExecutorCheckPerms() hook
Следующее
От: Robert Haas
Дата:
Сообщение: Re: JSON manipulation functions