[prev in list] [next in list] [prev in thread] [next in thread] 

List:       postgresql-general
Subject:    Re: [HACKERS] Error handling in plperl and pltcl
From:       Thomas Hallgren <thhal () mailblocks ! com>
Date:       2004-11-30 21:25:00
Message-ID: thhal-0rn2IAlVJcC4+g3VK3eMeJyG+zLQnCb () mailblocks ! com
[Download RAW message or body]

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





---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?

               http://archives.postgresql.org
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic