Re: Nested transaction - I am a bank ??

scott.marlowe <scott.marlowe@ihs.com>

From: "scott.marlowe" <scott.marlowe@ihs.com>
To: "Joshua D. Drake" <jd@commandprompt.com>
Cc: "Thapliyal, Deepak" <dthapliyal@soe.sony.com>, "'Richard Huxton'" <dev@archonet.com>, <Anton.Nikiforov@loteco.ru>, <pgsql-general@postgresql.org>
Date: 2004-01-13T18:34:20Z
Lists: pgsql-general
On Tue, 13 Jan 2004, Joshua D. Drake wrote:

> Thapliyal, Deepak wrote:
> 
> >Hi,
> >
> >Assume I have a bank app.. When customer withdraws $10 from his accouint I
> >have to do following 
> >	--> update account_summary table [subtract $10 from his account]
> >	--> update account detail_table [with other transaction details]
> >
> >Requirement: 
> >	either both transactions should succeed or both transactions should
> >be rolled back in case of failure.
> >
> >Question: 
> >	if my first update succeeds and second fails (say due to space
> >errors .. I have inconsistancy ..
> >  
> >
> 
> Not if you run the queries as a single transaction.
> 
> 
> >Per the thread below stored procedures/functions cannot have commits. I
> >assume that means that they will be implicitly commited ??
> >
> >How do I approach this simple requirment using psql ? 

Joshua, aren't functions run within their own transactions if they don't 
inherit one?  Wouldn't that take care of this part as well?