From: | Pisa Borràs, Anna <anna(dot)pisa(at)tecsidel(dot)es> |
---|---|
To: | "pgsql-es-ayuda(at)postgresql(dot)org" <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | No parar aplicación en vacuum full |
Date: | 2008-06-02 08:37:02 |
Message-ID: | E1DA896B8C4CAD45AB72083FA456C8C212662ED144@SRV-BCNMX.tecsidel.es |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Hola,
Recurro a vosotros para ver si me podéis ayudar en lo siguiente:
He tenido que migrar una bd de Informix a Postgresql en una aplicación que ya tiene unos años. No tuve ningún problema hasta que el cambio pasó de pruebas a explotación. A la semana la máquina iba a pedales, y los accesos a la base de datos duraban minutos. (Novata que era una en PostgreSQL)
Documentándome entré en el maravilloso mundo del vacuum. Logré estabilizar el sistema haciendo un autovacuum cada hora, un vacuum full cada día ( a las 3 de la madrugada, que el sistema va mas descargado, se ejecuta un script con el vacuum full) y aumentar el valor de parámetros de memoria o free space map . Con esta configuración todo marcha sobre ruedas.
Ahora los detalles: la aplicación modifica una tabla, que puede llegar a tener unos 70 registros, cada uno recibe un update cada 15 segundos, con lo cual os podéis imaginar como crece esta tabla cada día.
Para que el vacuum full haga limpieza debo parar la aplicación, y la vuelvo a arrancar una vez ha acabado el vacuum full. Cuando hice pruebas con la aplicación en funcionamiento encontraba cantidad de filas removibles pero luego no se podían borrar.
INFO: “tabla”: found nnnnnn removable, 70 non removable rows versions in xxxx pages
DETAIL: nnnnnn dead row versions cannot be removed yet
Es como si el vacuum full no pudiera bloquear la tabla para hacer la limpieza. (Puede ser esto realmente?)
Mi pregunta es si hay algún mecanismo o parámetro que permita que el vacuum full haga la limpieza de dicha tabla sin parar la aplicación.
Las máquinas sobre las que esta la aplicación y la BBDD son SUN con Solaris 10. La versión de PostgreSQL es la 8.1 11/6, la que trae el Solaris 10.
Gracias de antemano.
Saludos cordiales,
Anna
From | Date | Subject | |
---|---|---|---|
Next Message | Raúl Andrés Duque Murillo | 2008-06-02 10:19:01 | Re: Optimizar JOINS en vista |
Previous Message | José Manuel Ruiz | 2008-06-02 07:28:32 | Re: OT - PHP Postgresql |