Re: No parar aplicación en vacuum full

From: "Silvio Quadri" <silvioq(at)gmail(dot)com>
To: Pisa Borràs, Anna <anna(dot)pisa(at)tecsidel(dot)es>
Cc: "pgsql-es-ayuda(at)postgresql(dot)org" <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: No parar aplicación en vacuum full
Date: 2008-06-02 13:11:37
Message-ID: 61dc71dc0806020611n4cedf9bfwf6afc48541a56891@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

El día 2 de junio de 2008 5:37, Pisa Borràs, Anna
<anna(dot)pisa(at)tecsidel(dot)es> escribió:
> 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

El vacuum full no lo deberías usar todos los días. Por otro lado, no
creo que pueda hacer otra cosa que lockear la tabla.
Si la tabla tiene gran cantidad de actualizaciones, hacele vacuum
simple sólo a esa tabla y listo.

--
Silvio Quadri

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Ing. Eris J. Gomez 2008-06-02 13:33:23 Re: [pgsql-es-ayuda] Restore sin pedir contraseña
Previous Message Damian Culotta 2008-06-02 13:07:07 Re: OT - PHP Postgresql