configuración postgres 9 vs postgres 8 problema con checkpoints y autovacuum

From: Jose Mercedes Venegas Acevedo <jvenegasperu(at)gmail(dot)com>
To: Ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: configuración postgres 9 vs postgres 8 problema con checkpoints y autovacuum
Date: 2012-07-06 20:24:42
Message-ID: CA+KjtGf7v4MUVyOZd8wn0xU-ctD+uaE57CRw-dTwA70B7z=73g@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Hola a todos

me he visto en la necesidad de mudar mi base de datos postgres 9.1 a
postgres 8.4 basicamente para aprovechar las funciones de pgrouting que
hasta 8.4 funcionan perfecto
despues de instalar postgres 8.4 restaure mi bd de 9.1 a 8.4 basicamente lo
hice sacando primero la estructura y luego la data en archivos planos
subidos con copy
resultado mi sistema siempre se cae al minuto de acceder a la base de datos
les pongo los logs al final con lo que me indica,

mi experiencia que he tenido es la siguiente:

En postgres 9 tenia estas lineas Postgres 8.4 Configuracion A Postgres
8.4 Configuracion B #shared_buffers = 16MB # min
128kB shared_buffers
= 64MB shared_buffers = 128MB #maintenance_work_mem = 16MB #
min 1MB maintenance_work_mem
= 32 maintenance_work_mem = 32MB #checkpoint_segments = 3
checkpoint_segments
= 5 #checkpoint_segments = 6

a pesar que las 3 lineas estan comentadas entendia que eran los valores de
postgres 9 por defecto nunca necesite cambiar nada en Postgres 9 para que
la BD funcione bien
pero en 8.4 tuve que cambiar los valores por defecto a los que se observan
en A y B pues como indican los logs que colocare al final indicaban
aumentar los checkpoints

ahora con las configuraciones A y B menos mal mi BD ya esta funcionando sin
embargo la configuracion B responde mejor a la configuracion A es decir la
misma busqueda en B se realiza en la tercera parte del tiempo que A
pero sigue tardando un poco en postgres 9 era instantaneo quisiera que mi
server 8.4 respondiera igual ya revise que todas tienen los mismos indices
y cantidades de datos. las 3 BD son identicas y los servidores tambien en
hardware tambien

mi base de datos pesa aproximadamente un 1 Gb completa y mi tablas de
mayor cantidad de registros son de 200 mi l registros y el tamaño en disco
de la tabla mas grande es de 90 megas mas o menos

ahora me estoy animando por aumentar el valor de shared buffers de mi
configuracion B quizas las consultas me respondan mas rapido sera asi?
la documentacion indica por ejemplo 3 chekpoints cada 16 MB los 16 Mb son
fijos? donde le digo a postgres que cambio ese valor?

y al parecer aumentando los chekpoints basicamente el servidor empezo a
andar y aumentando shared buffers y work_mem empezo a trabajar mas rapido

y bueno el autovacuum lo apague y ahora esta andando pero estoy algo
perdido quisiera saber que pasa si aumento mas chekpoints segmentes por
ejemplo

o que pasa si enciendo el autovacuum con estos nuevos valores

Aqui les dejo los logs que me empezo a dar y menos mal se resolvio, estoy
trabajando con widows server 2003 y windows server 2008

espero alguien me ayude un poco a comprender mejor que colocar en estos
parametros que realmente me ligo que levante la BD de suerte porque no
tengo muy claro que estoy logrando con esta configuracion?

saludos a todos

2012-07-06 11:45:45 COT HINT: Considere incrementar el parámetro de
configuración «checkpoint_segments».
2012-07-06 11:45:53 COT LOG: los puntos de control están ocurriendo con
demasiada frecuencia (cada 8 segundos)
2012-07-06 11:45:53 COT HINT: Considere incrementar el parámetro de
configuración «checkpoint_segments».
2012-07-06 11:46:05 COT LOG: los puntos de control están ocurriendo con
demasiada frecuencia (cada 12 segundos)
2012-07-06 11:46:05 COT HINT: Considere incrementar el parámetro de
configuración «checkpoint_segments».
2012-07-06 11:46:21 COT ERROR: cancelando tarea de autovacuum

2012-07-06 11:39:48 COT LOG: se recibió petición de apagado rápido
2012-07-06 11:39:48 COT LOG: abortando transacciones activas
2012-07-06 11:39:48 COT LOG: apagando lanzador de autovacuum
2012-07-06 11:39:48 COT LOG: apagando
2012-07-06 11:39:48 COT LOG: el sistema de bases de datos está apagado

2012-07-06 12:31:20 COT FATAL: lo siento, ya tenemos demasiados clientes
2012-07-06 12:31:20 COT WARNING: autovacuum worker started without a
worker entry
2012-07-06 12:38:36 COT WARNING: pgstat wait timeout
2012-07-06 12:39:41 COT WARNING: worker took too long to start; cancelled
2012-07-06 12:39:53 COT WARNING: pgstat wait timeout
2012-07-06 12:41:03 COT WARNING: worker took too long to start; cancelled
2012-07-06 12:41:06 COT WARNING: autovacuum worker started without a
worker entry
2012-07-06 12:41:08 COT WARNING: autovacuum worker started without a
worker entry
2012-07-06 12:48:58 COT LOG: se encontró fin de archivo inesperado en la
conexión del cliente
2012-07-06 12:51:54 COT WARNING: ya hay una transacción en curso
2012-07-06 12:56:16 COT LOG: no se pudo enviar datos al cliente: Unknown
winsock error 10061
2012-07-06 12:56:16 COT LOG: no se pudo recibir datos del cliente: Unknown
winsock error 10061
2012-07-06 12:56:16 COT LOG: se encontró fin de archivo inesperado en la
conexión del cliente
2012-07-06 12:56:32 COT LOG: no se pudo enviar datos al cliente: Unknown
winsock error 10061
2012-07-06 12:56:32 COT LOG: no se pudo recibir datos del cliente: Unknown
winsock error 10061
2012-07-06 12:56:32 COT LOG: se encontró fin de archivo inesperado en la
conexión del cliente
2012-07-06 13:16:26 COT LOG: se recibió petición de apagado rápido
2012-07-06 13:16:26 COT LOG: abortando transacciones activas
2012-07-06 13:16:26 COT FATAL: terminando la conexión debido a una orden
del administrador
2012-07-06 13:16:26 COT FATAL: terminando la conexión debido a una orden
del administrador
2012-07-06 13:16:28 COT FATAL: terminando la conexión debido a una orden
del administrador
2012-07-06 13:16:29 COT LOG: apagando lanzador de autovacuum

--
José Mercedes Venegas Acevedo
cel: Mov. 949808846

mails: jvenegasperu(at)php(dot)net
jvenegasperu(at)gmail(dot)com

PHP Spanish Docs translator member.
http://www.php.net/manual/es/index.php

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Lazáro Rubén García Martínez 2012-07-07 16:16:19 RE: configuración postgres 9 vs postgres 8 problema con checkpoints y autovacuum
Previous Message Alvaro Herrera 2012-07-05 22:16:58 RE: Duda entre refcursor y record