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:44:19 |
Message-ID: | CA+TgmoZR0dRYFeBm7E1AOxZTp-_XKXdm=OMvq0mLCAApCz1Ntg@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Tue, Mar 6, 2012 at 12:23 PM, Simon Riggs <simon(at)2ndquadrant(dot)com> wrote:
> On Tue, Mar 6, 2012 at 5:14 PM, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
>>> 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.
>
> We can change state then, but to what? We don't have a relcache.
If the state is per-database or per-tablespace, you can read
pg_database at that point and see what the flag says. If it's
per-relation, then I agree: you still don't have enough information.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
From | Date | Subject | |
---|---|---|---|
Next Message | Robert Haas | 2012-03-06 17:47:00 | Re: elegant and effective way for running jobs inside a database |
Previous Message | Christopher Browne | 2012-03-06 17:37:01 | Re: elegant and effective way for running jobs inside a database |