On Jan 2, 2007, at 2:01 PM, Lukas Kahwe Smith wrote:
Tom Lane wrote:
Lukas Kahwe Smith <[EMAIL PROTECTED]> 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");
                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                                            [EMAIL PROTECTED]
EnterpriseDB      http://enterprisedb.com      512.569.9461 (cell)

---------------------------(end of broadcast)---------------------------
TIP 5: don't forget to increase your free space map settings

Reply via email to