Re: TODO: Add a GUC to control whether BEGIN inside - Mailing list pgsql-hackers

From Jim Nasby
Subject Re: TODO: Add a GUC to control whether BEGIN inside
Date
Msg-id A1794C03-B429-4C3E-8394-26FBDE88786C@decibel.org
Whole thread Raw
In response to Re: TODO: Add a GUC to control whether BEGIN inside  (Lukas Kahwe Smith <smith@pooteeweet.org>)
List pgsql-hackers
On Jan 2, 2007, at 2:01 PM, Lukas Kahwe Smith wrote:
> Tom Lane wrote:
>> Lukas Kahwe Smith <smith@pooteeweet.org> writes:
>>> 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.
>> It's not that hard, is it?
>>     if (PQtransactionStatus(conn) == PQTRANS_IDLE)
>>         PQexec(conn, "BEGIN");
>>     else
>>         PQexec(conn, "SAVEPOINT foo");
>
> Its not exactly convenient either, especially in the case of  
> modular code that may be developed by different people. Anyways,  
> like I said I have a solution in my framework to make life of  
> module developers easier. Obviously proper nested transactions  
> would be the ideal, but so it goes. I was just throwing this out  
> here when I saw Peter's comment.

+1. Right now it's not as big a deal since we don't allow transaction  
control inside functions, but if we ever get that ability it will  
become much more of a pain to write modular code that deals with  
savepoints/subtransactions.
--
Jim Nasby                                            jim@nasby.net
EnterpriseDB      http://enterprisedb.com      512.569.9461 (cell)




pgsql-hackers by date:

Previous
From: Jim Nasby
Date:
Subject: Re: effective_cache_size vs units
Next
From: "Jaime Casanova"
Date:
Subject: Re: TODO: Add a GUC to control whether BEGIN inside