From: | Simon Riggs <simon(at)2ndQuadrant(dot)com> |
---|---|
To: | Chuck McDevitt <cmcdevitt(at)greenplum(dot)com> |
Cc: | Bruce Momjian <bruce(at)momjian(dot)us>, Robert Haas <robertmhaas(at)gmail(dot)com>, Alvaro Herrera <alvherre(at)commandprompt(dot)com>, Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>, decibel <decibel(at)decibel(dot)org>, "Jonah H(dot) Harris" <jonah(dot)harris(at)gmail(dot)com>, "jd(at)commandprompt(dot)com" <jd(at)commandprompt(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Aidan Van Dyk <aidan(at)highrise(dot)ca>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Block-level CRC checks |
Date: | 2009-12-05 00:51:58 |
Message-ID: | 1259974318.13774.39345.camel@ebony |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Fri, 2009-12-04 at 14:47 -0800, Chuck McDevitt wrote:
> A curiosity question regarding torn pages: How does this work on file
> systems that don't write in-place, but instead always do
> copy-on-write?
>
> My example would be Sun's ZFS file system (In Solaris & BSD). Because
> of its "snapshot & rollback" functionality, it never writes a page
> in-place, but instead always copies it to another place on disk. How
> does this affect the corruption caused by a torn write?
>
> Can we end up with horrible corruption on this type of filesystem
> where we wouldn't on normal file systems, where we are writing to a
> previously zeroed area on disk?
>
> Sorry if this is a stupid question... Hopefully somebody can reassure
> me that this isn't an issue.
Think we're still good. Not a stupid question.
Hint bits are set while the block is in shared_buffers and setting a
hint bit dirties the page, but does not write WAL.
Because the page is dirty we re-write the whole block at checkpoint, by
bgwriter cleaning or via dirty page eviction. So ZFS is OK, but we do
more writing than we want to, sometimes.
--
Simon Riggs www.2ndQuadrant.com
From | Date | Subject | |
---|---|---|---|
Next Message | Massa, Harald Armin | 2009-12-05 01:23:31 | Re: Block-level CRC checks |
Previous Message | Michael Glaesemann | 2009-12-05 00:49:05 | Re: New VACUUM FULL |