On Fri, 2008-10-17 at 12:26 -0300, Alvaro Herrera wrote:
> Apparently the only solution in sight is to WAL-log hint bits. Simon
> opines it would be horrible from a performance standpoint to WAL-log
> every hint bit set, and I think we all agree with that. So we need to
> find an alternative mechanism to WAL log hint bits.
Yes, it's clearly not acceptable bit by bit.
But perhaps writing a single WAL record if you scan whole page and set
all bits at once. Then it makes sense in some cases.
It might be possible to have a partial solution where some blocks have
CRC checks, some not. Most databases have static portions. Any block not
touched for X amount of time (~= to a distance between current LSN and
LSN on block) could have CRC checks added.
Or maybe just make it a table-level option and let users choose if they
want the hit or not.
Or maybe have a new command that you can run whenever you want to set
CRC checks. That way you get to choose. CHECK TABLE?
-- Simon Riggs www.2ndQuadrant.comPostgreSQL Training, Services and Support