Re: TODO: Add a GUC to control whether BEGIN inside

Поиск
Список
Период
Сортировка
От Lukas Kahwe Smith
Тема Re: TODO: Add a GUC to control whether BEGIN inside
Дата
Msg-id 459A8CCF.1090408@pooteeweet.org
обсуждение исходный текст
Ответ на Re: TODO: Add a GUC to control whether BEGIN inside  (Alvaro Herrera <alvherre@commandprompt.com>)
Список pgsql-hackers
Alvaro Herrera wrote:
> news.postgresql.org wrote:
> 
>> While we are on the topic, I have implemented a poor mans nested 
>> transaction feature into my database access layer. essentially 
>> subsequent calls to begin a transaction after the initial begin simply 
>> increase an internal counter and set a savepoint. as you commit the 
>> transactions the counter is decreased and the savepoints are released. 
>> maybe this could be implemented inside postgresql to make the life of 
>> modular programmers easier?
> 
> Yeah, it's called "SAVEPOINT foo" and "RELEASE foo".

Err, I think you misunderstood what I said. My implementation uses 
SAVEPOINTs already. The point is having some API where you do not have 
to care of you are already in a transaction or not. Depending on if you 
are it will either open a new transaction or simply place a savepoint.

with the following invented commands:
MBEGIN FOO1 // open transaction; set counter to 1
MBEGIN FOO2 // set savepoint FOO2; set counter to 2
MBEGIN FOO3 // set savepoint FOO3; set counter to 3
MROLLBACK FOO3 // rollback to FOO3; set counter to 2
MCOMMIT FOO2 // release FOO2; set counter to 1
MCOMMIT FOO1 // commit

regards,
Lukas

regards,
Lukas



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

Предыдущее
От: "news.postgresql.org"
Дата:
Сообщение: Re: TODO: Add a GUC to control whether BEGIN inside
Следующее
От: Lukas Kahwe Smith
Дата:
Сообщение: Re: TODO: Add a GUC to control whether BEGIN inside