Skip site navigation (1) Skip section navigation (2)

Re: Ayuda con PgPool2 y funciones en pl/Pgsql

From: Jaime Casanova <jaime(at)2ndquadrant(dot)com>
To: Lazáro Rubén García Martínez <lgarciam(at)vnz(dot)uci(dot)cu>
Cc: "Andres A(dot) Mamani" <andres(dot)abel(at)gmail(dot)com>, Miguel Angel Hernandez Moreno <miguel(dot)hdz(dot)mrn(at)gmail(dot)com>, "pgsql-es-ayuda(at)postgresql(dot)org" <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Ayuda con PgPool2 y funciones en pl/Pgsql
Date: 2012-07-21 17:41:26
Message-ID: CAJKUy5iZzF+hFLUNkxFD0p=R09CJ3hzp91=Tb6XsTdNJJpScHQ@mail.gmail.com (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
2012/7/19 Lazáro Rubén García Martínez <lgarciam(at)vnz(dot)uci(dot)cu>:
> Si configuras pgpool en modo maestro-esclavo, entonces cuando realizas un select de una función, se verificará la lista
> black_function_list y en caso de confirmar que sea una función, pgpool la enviará al servidor maestro y no al standby.
>

lo que causara que la replica este inconsistente porque en este caso
esas funciones escriben en la base. eso funciona si solo estoy
haciendo balanceo, pero el tambien quiere replicar (es decir, que vaya
a ambos nodos)

la solucion para el esta en setear replicate_select en la
configuracion de pgpool pero eso hara que todos los selects se
replican a ambos lados (es decir, tambien select de solo consulta
eliminando el balanceo) o marcar en la aplicacion con /* REPLICATION
*/ todos los selects que deban ser replicados.

Nota para Andres: pones el /* REPLICATION */ antes del SELECT que
ejecuta la funcion, algo asi:
/* REPLICATION */ SELECT graba_datos(valor1, valor2);

aun asi hay forma de dañar eso, por ejemplo si te olvidas de poner el
/* REPLICATION */ o si en la funcion ejecutas cosas como now() (al
menos si las fechas no coinciden en el maestro y el esclavo), random()
y cosas asi.

mejor replica por abajo usando SR y solo balancea consultas con pgpool
http://www.pgpool.net/docs/latest/doc/pgpool-en.html#master_slave_mode

-- 
Jaime Casanova         www.2ndQuadrant.com
Professional PostgreSQL: Soporte 24x7 y capacitación

In response to

Responses

pgsql-es-ayuda by date

Next:From: =?iso-8859-1?Q?Laz=E1ro_Rub=E9n_Garc=EDa_Mart=EDnez?=Date: 2012-07-21 18:31:23
Subject: RE: Ayuda con PgPool2 y funciones en pl/Pgsql
Previous:From: =?iso-8859-1?B?Sm9z6SBGZXJt7W4gRnJhbmNpc2NvIEZlcnJlcmFz?=Date: 2012-07-21 16:52:26
Subject: Tabla cliente y dividirla por sexo

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group