Estimados.

Estoy utilizando esta solución (pyreplica) y esta bastante estable, pero tengo el siguiente problema. Tengo tres servidores cada uno es maestro de los otros dos, debido a esto se producen cientos de bloqueos en la tabla de replicación, a pesar de ello en unos poco segundos las bases son sincronizadas en ambos esclavos (aprox. 10 seg, muy optimo, considerando en la replicación de 500 querys por internet). Hasta aqui todo bien.

El problema que esta apareciendo ahora es que cada algun tiempo (10hrs ó mas) el hilo de replicación se suspende, no se detiene, de echo el "keepalive" continua enviando datos al log, pero los query's simplemente no se ejecutan en el destino, no se envian correos del error y en el log solo aparecen los keepalive del hilo. ¿alguna pista?, ¿quedo a la espera de alguna consulta?¿algun timeout no respetado?, se ajustaron todos a 3 seg, en las configuraciones de PyReplica.

Por ahora al detectar una acumulación importante de datos pendientes, se reinicia el esclavo de pyreplica y se normaliza la situación, asi como tambien en algunos casos el bloqueo es tal que la la petición de una consulta demora muchisimo y ha sido necesario un restart al pgsql.

Quizas el problema pase por ajustes al mismo motor, esto pensando en un timeout u otro parametro que ayude a "soltar" consultas que toman demasiado tiempo o que provoquen bloqueos prolongados, y asi no bloquear el servicio para el resto de los usuarios del motor.


--
TIP 5: ¿Has leído nuestro extenso FAQ?
        http://www.postgresql.org/docs/faqs.FAQ.html

Responder a