rollback in function

From: Juan Pablo L(dot) <jpablolorenzetti(at)hotmail(dot)com>
To: "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org>
Subject: rollback in function
Date: 2015-02-19 20:42:19
Message-ID: DUB130-W51AD18DB90DD08ADC29A41D92D0@phx.gbl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hello, i have created a function (in C) that receives an array that contains tuples of ID's and values.

The function is to execute updates on each ID assigning the value, but if one of these operation fails (does not meet certain criteria)
inside the function i would like to rollback and leave everything untouched, in case other ID;s were already updated previously,
and come back to the caller and inform about it.

I have read all over that it is not posible to do rollback inside a function because each function is executed inside a transaction
so inside the function you dont have control over BEGIN/ROLLBACK, but i m sure there is a way to do this, can anyone please give me a hint
how this is accomplished ? thank you!!!

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Juan Pablo L 2015-02-19 20:45:40 rollback in C functions
Previous Message zach cruise 2015-02-19 20:39:16 select where true, or select where input = '$var'