Re: Error handling in plperl and pltcl - Mailing list pgsql-hackers

From Thomas Hallgren
Subject Re: Error handling in plperl and pltcl
Date
Msg-id thhal-0rn2IAlVJcC4+g3VK3eMeJyG+zLQnCb@mailblocks.com
Whole thread Raw
In response to Re: Error handling in plperl and pltcl  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
Tom Lane wrote:

>The fundamental point you are missing, IMHO, is that a savepoint is a
>mechanism for rolling back *already executed* SPI commands when the
>function author wishes that to happen.
>
Of course. That's why it's imperative that it is the developer that 
defines the boundaries. I forsee that it will be very common that the 
author wishes this to happen due to a failure of some kind. But sure, 
there might be other reasons too.

>A failure in an individual
>command should not leave the function in a broken state.
>  
>
Well, if the function doesn't continue, there's not much point in doing 
repair work, is there? And that's the essence of the whole discussion.

You say:
Let's always take the overhead of adding a subtransaction so that the 
caller will be able to return to a known state, regardless if he wants 
to do so.

I say:
Let the caller decide when to add this overhead since he is the one who 
knows a) when it's indeed needed at all and b) where to best define the 
boundaries.

Regards,
Thomas Hallgren






pgsql-hackers by date:

Previous
From: Neil Conway
Date:
Subject: Re: nodeAgg perf tweak
Next
From: Joel
Date:
Subject: Re: [GENERAL] USENET vs Mailing Lists Poll ...