From: | Robert Haas <robertmhaas(at)gmail(dot)com> |
---|---|
To: | Simon Riggs <simon(at)2ndquadrant(dot)com> |
Cc: | PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Checksums, state of play |
Date: | 2012-03-06 17:14:45 |
Message-ID: | CA+TgmoYkCG9Zr47C+N6VPV1_iCmDhcQGcoQ_4aQ5kdMqW4VtPg@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Tue, Mar 6, 2012 at 11:50 AM, Simon Riggs <simon(at)2ndquadrant(dot)com> wrote:
> On Tue, Mar 6, 2012 at 4:06 PM, Simon Riggs <simon(at)2ndquadrant(dot)com> wrote:
>> On Tue, Mar 6, 2012 at 3:31 PM, Simon Riggs <simon(at)2ndquadrant(dot)com> wrote:
>>
>>> I'll keep an open mind for now about database/table level. I'm not
>>> sure how possible/desirable each is.
>>
>> Table level sounds great, but how will it work with recovery? We don't
>> have a relcache in Startup process.
>>
>> So either database or tablespace level seems doable.
>
> Even db or ts level is problematic.
>
> Options
>
> (1) Recovery ignores checksums until db in consistent state
>
> (2) Recovery ignores checksums until all databases are enabled, when
> we set flag in pg_control
>
> (3) Recovery checks blocks marked as having a checksum, no matter the
> overall state
How about combining #1 and #3? If the database isn't consistent yet
(and thus we can't look at pg_database) then we rely on the blocks
themselves to tell us whether they have checksums. Once we reach
consistency we can do better.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
From | Date | Subject | |
---|---|---|---|
Next Message | Artur Litwinowicz | 2012-03-06 17:20:48 | Re: elegant and effective way for running jobs inside a database |
Previous Message | Heikki Linnakangas | 2012-03-06 17:14:02 | Re: Checksums, state of play |