Re: Why need XLogReadBuffer have the paramter "init"? - Mailing list pgsql-hackers

From Jacky Leng
Subject Re: Why need XLogReadBuffer have the paramter "init"?
Date
Msg-id evk3gj$i94$1@news.hub.org
Whole thread Raw
In response to Why need XLogReadBuffer have the paramter "init"?  ("Jacky Leng" <lengjianquan@163.com>)
List pgsql-hackers
"Tom Lane" <tgl@sss.pgh.pa.us> д���ʼ�
news:15998.1176303488@sss.pgh.pa.us...
> "Jacky Leng" <lengjianquan@163.com> writes:
> > Cann't we remove this param?
>
> No.
>
> > We can rewrite like this:
> > 1.XLogReadBuffer:
> >   * remove init;
> >   * everytime we cann't read a block, just "log_invalid_page" it, and
return
> > InvalidBuffer;
>
> Your proposal degrades the robustness of the system by turning non-error
> cases into errors.  If the caller is able to rewrite the page fully, we
> should not report an error when it's not available to read.

Oh, I see, but how about my second question, is it possible?
If it happens:
1. the second rel's pages' lsn surely is lager than xlog records of the
first rel;
2. so it's possible some xlog record are not redoed;
3. but those pages that can be rewrite fully are rewrited unconditionaly,

If I do a PITR recovery now, is there any trouble?----The file contains both
old rels'data and new rel's.


Am I wrong?




pgsql-hackers by date:

Previous
From: Maxime Henrion
Date:
Subject: Re: Anyone interested in improving postgresql scaling?
Next
From: Maxime Henrion
Date:
Subject: Re: [mux@FreeBSD.org: Re: Anyone interested in improving postgresql scaling?]