On Mon, May 23, 2016 at 9:29 AM, <priyeshkaratha@gmail.com> wrote:
> The following bug has been logged on the website:
>
> Bug reference: 14154
> Logged by: Priyesh Karatha
> Email address: priyeshkaratha@gmail.com
> PostgreSQL version: 9.4.0
> Operating system: Ubuntu14
> Description:
>
>
> I have created following function in pgpool .
>
> CREATE OR REPLACE Function fun1(Id int)
> RETURNS boolean as $executionStatus$
> DECLARE
>
> BEGIN
> DELETE FROM table1 where table1_id =3D Id ;
> DELETE from table2 where table2_id =3D Id ;
> DELETE from table3 where table3_id =3D Id ;
> RETURN true;
> END;
> $executionStatus$ LANGUAGE plpgsql;
> I run following command inside the postgres shell of pgpool
>
> select fun1(1);
> It is deleted the data only from master. I tried again then it is deleted
> from different server.So replication fails in this case. But if i use
> delete
> queries separately then it is working fine.It is deleting data from all
> servers.
>
> DELETE FROM table1 where table1_id =3D 1 ;DELETE from table2 where table=
2_id
> =3D 1 ;DELETE from table3 where table3_id =3D 1 ;
> Please let me know how to fix this issue .
=E2=80=8BThis is not a PostgreSQL bug. Its likely not even a bug.
Please direct you question to the appropriate forum.
The following seems likely to be of help in determining where that may be:
http://www.pgpool.net/mediawiki/index.php/Mailing_lists
=E2=80=8BHowever, unless pgpool is doing something really unusual, the tran=
saction
that you establish by using a function is likely disabling the very pooling
behavior you are attempting to use.
=E2=80=8BDavid J.
=E2=80=8B