Re: Two-phase commmit, plpgsql and plproxy - Mailing list pgsql-general

From Jeff Davis
Subject Re: Two-phase commmit, plpgsql and plproxy
Date
Msg-id 1234388687.20157.7.camel@dell.linuxdev.us.dell.com
Whole thread Raw
In response to Two-phase commmit, plpgsql and plproxy  (Igor Katson <descentspb@gmail.com>)
Responses Re: Two-phase commmit, plpgsql and plproxy  (Igor Katson <descentspb@gmail.com>)
List pgsql-general
On Wed, 2009-02-11 at 12:43 +0300, Igor Katson wrote:
> ERROR:  XX000: SPI_execute_plan failed executing query "PREPARE
> TRANSACTION '2pctest'": SPI_ERROR_TRANSACTION

It's probably treating the word PREPARE specially. You can avoid this
problem by using EXECUTE and specifying the command as a string.

> Is there a way to achieve the needed behaviour with two-phase commmit,
> plpgsql and plproxy ?

You can't begin or end a transaction inside a function. If that was
allowed, what would the function do after the transaction was prepared?

I think you need to do PREPARE TRANSACTION separately, somehow. You
might need to modify plproxy to do that the way you want.

Regards,
    Jeff Davis


pgsql-general by date:

Previous
From: Scott Marlowe
Date:
Subject: Re: Killing OIDs
Next
From: Igor Katson
Date:
Subject: Re: Two-phase commmit, plpgsql and plproxy