From: | Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com> |
---|---|
To: | Fujii Masao <masao(dot)fujii(at)gmail(dot)com> |
Cc: | Magnus Hagander <magnus(at)hagander(dot)net>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Stephen Frost <sfrost(at)snowman(dot)net>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Include WAL in base backup |
Date: | 2011-01-28 21:02:10 |
Message-ID: | 4D432ED2.2030705@enterprisedb.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 27.01.2011 06:44, Fujii Masao wrote:
> + XLByteToSeg(endptr, endlogid, endlogseg);
> <snip>
> + /* Have we reached our stop position yet? */
> + if (logid> endlogid ||
> + (logid == endlogid&& logseg>= endlogseg))
> + break;
>
> What I said in upthread is wrong. We should use XLByteToPrevSeg
> for endptr and check "logseg> endlogseg". Otherwise, if endptr is
> not a boundary byte, endlogid/endlogseg indicates the last
> necessary WAL file, but it's not sent.
We should use XLByteToPrevSeg, but I believe >= is still correct.
logid/logseg is the last WAL segment we've successfully sent, and
endlogif/endlogid is the last WAL segment we need to send. When they are
the same, we're done.
--
Heikki Linnakangas
EnterpriseDB http://www.enterprisedb.com
From | Date | Subject | |
---|---|---|---|
Next Message | Noah Misch | 2011-01-28 21:49:39 | Re: ALTER TYPE 3: add facility to identify further no-work cases |
Previous Message | Marti Raudsepp | 2011-01-28 20:48:54 | Re: [PATCH] Return command tag 'REPLACE X' for CREATE OR REPLACE statements. |