Re: Checkpoints en postgres 8.0

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: "Fabio C(dot) Bon" <bon(at)kernel(dot)net(dot)uy>
Cc: 'PostgreSQL en Español' <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Checkpoints en postgres 8.0
Date: 2005-07-28 14:43:07
Message-ID: 20050728144307.GA30734@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

On Wed, Jul 27, 2005 at 05:31:25PM -0400, Alvaro Herrera wrote:
> On Wed, Jul 27, 2005 at 05:22:51PM -0300, Fabio C. Bon wrote:
>
> > Todo mi razonamiento se basa en que tengo entendido que resetxlog limpia la
> > WAL, pero todo aquella información anterior al ultimo checkpoint ya fue
> > escrita en la DB.
>
> Eso es lo que yo entiendo tambien. Sin embargo, es muy posible que si
> estas con fsync=false, entonces no se le haya efectuado un fsync a los
> archivos de datos aun despues del checkpoint.

Efectivamente, el codigo no ejecuta un fsync sobre los archivos de datos
durante un checkpoint, si la opcion fsync esta desactivada. Es decir,
aun cuando se haya ejecutado un checkpoint es posible perder datos, si
el sistema operativo decide no escribirlos a disco. Puedes corroborar
esto tu mismo mirando el codigo; busca la funcion mdsync() en
src/backend/storage/smgr/md.c

Moraleja: jamas tener un servidor con fsync=false.

--
Alvaro Herrera (<alvherre[a]alvh.no-ip.org>)
"El número de instalaciones de UNIX se ha elevado a 10,
y se espera que este número aumente" (UPM, 1972)

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Marco Villagrán 2005-07-28 14:53:08 Portando Procedimiento de Oracle a Postgresql
Previous Message Jaime Casanova 2005-07-28 14:10:36 Re: Activar el log de transacciones