| From: | Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com> | 
|---|---|
| To: | Fujii Masao <masao(dot)fujii(at)gmail(dot)com> | 
| Cc: | Florian Pflug <fgp(at)phlo(dot)org>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Simon Riggs <simon(at)2ndquadrant(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> | 
| Subject: | Re: bug of recovery? | 
| Date: | 2011-10-03 07:21:26 | 
| Message-ID: | 4E896276.7020209@enterprisedb.com | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-hackers | 
On 29.09.2011 14:31, Fujii Masao wrote:
> On Tue, Sep 27, 2011 at 8:06 PM, Florian Pflug<fgp(at)phlo(dot)org>  wrote:
>> Actually, why don't we use that machinery to implement this? There's currently no rm_safe_restartpoint callback for RM_XLOG_ID, so we'd just need to create one that checks whether invalid_page_tab is empty.
>
> Okay, the attached patch prevents the creation of restartpoints by using
> rm_safe_restartpoint callback if we've not reached a consistent state yet
> and the invalid-page table is not empty. But the invalid-page table is not
> tied to the specific resource manager, so using rm_safe_restartpoint for
> that seems to slightly odd. Is this OK?
I don't think this should use the rm_safe_restartpoint machinery. As you 
said, it's not tied to any specific resource manager. And I've actually 
been thinking that we will get rid of rm_safe_restartpoint altogether in 
the future. The two things that still use it are the b-tree and gin, and 
I'd like to change both of those to not require any post-recovery 
cleanup step to finish multi-page operations, similar to what I did with 
GiST in 9.1.
-- 
   Heikki Linnakangas
   EnterpriseDB   http://www.enterprisedb.com
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Simon Riggs | 2011-10-03 07:26:16 | Re: Separating bgwriter and checkpointer | 
| Previous Message | Simon Riggs | 2011-10-03 07:07:10 | Re: bug of recovery? |