RE: No parar aplicación en vacuum full

From: Pisa Borràs, Anna <anna(dot)pisa(at)tecsidel(dot)es>
To: Jaime Casanova <systemguards(at)gmail(dot)com>
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 17:11:39
Message-ID: E1DA896B8C4CAD45AB72083FA456C8C21268AD68C2@SRV-BCNMX.tecsidel.es
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

OK.
Voy a hacer lo que me sugieres no utilizando el vacuum full y configurando el autovacuum para
esta tabla.

Ya os contaré el resultado.

Gracias y saludos,

Anna Pisa

________________________________________
De: Jaime Casanova [systemguards(at)gmail(dot)com]
Enviat el: dilluns, 2 / juny / 2008 17:29
Per a: Pisa Borràs, Anna
A/c: pgsql-es-ayuda(at)postgresql(dot)org
Tema: Re: [pgsql-es-ayuda] No parar aplicación en vacuum full

2008/6/2 Pisa Borràs, Anna <anna(dot)pisa(at)tecsidel(dot)es>:
> 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.
>

vacuum full no lo necesitas, solo haz vacuum normal...

> 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.
>

es posible configurar autovacuum para que afecte a esta tabla de forma
mas frecuente creando un registro que haga referencia a esta tabla en
el catalogo pg_autovacuum

> Para que el vacuum full haga limpieza debo parar la aplicación, y la vuelvo
> a arrancar una vez ha acabado el vacuum full.

por eso no es conveniente el VACUUM FULL, y lo que es mas actualmente
ya ni siquiera se recomienda su uso...

> 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?)
>

Lo que esta pasando es que aun hay transacciones que pueden ver las
versiones viejas de esas tuplas. Mientras esas transacciones esten
corriendo VACUUM no se va a arriesgar a eliminarlas

> 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.
>

si. no lo uses :)

--
Atentamente,
Jaime Casanova
Soporte y capacitación de PostgreSQL
Guayaquil - Ecuador
Cel. (593) 087171157

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Miguel Rodríguez Penabad 2008-06-02 18:49:33 Re: Optimizar JOINS en vista
Previous Message José Fermín Francisco Ferreras 2008-06-02 16:48:27 cuestión d Licencias