Re: pg_xlogdump fails to handle WAL file with multi-page XLP_FIRST_IS_CONTRECORD data

From: Craig Ringer <craig(at)2ndquadrant(dot)com>
To: Pavan Deolasee <pavan(dot)deolasee(at)gmail(dot)com>
Cc: Michael Paquier <michael(dot)paquier(at)gmail(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: pg_xlogdump fails to handle WAL file with multi-page XLP_FIRST_IS_CONTRECORD data
Date: 2016-03-31 00:57:42
Message-ID: CAMsr+YEziXkrBUJDN0q1aGQSLKZkqm7z-+8_jXyO0npUp_=ndQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 23 March 2016 at 18:04, Pavan Deolasee <pavan(dot)deolasee(at)gmail(dot)com> wrote:

>
>
> On Wed, Mar 23, 2016 at 1:13 PM, Michael Paquier <
> michael(dot)paquier(at)gmail(dot)com> wrote:
>
>>
>> + /*
>> + * Compute targetRecOff. It should typically be greater than short
>> + * page-header since a valid record can't , but can also be zero
>> when
>> + * caller has supplied a page-aligned address or when we are
>> skipping
>> + * multi-page continuation record. It doesn't matter though
>> because
>> + * ReadPageInternal() will read at least short page-header worth
>> of
>> + * data
>> + */
>> This needs some polishing, there is an unfinished sentence here.
>>
>> + targetRecOff = tmpRecPtr % XLOG_BLCKSZ;
>> targetRecOff, pageHeaderSize and targetPagePtr could be declared
>> inside directly the new while loop.
>>
>
> Thanks Michael for reviewing the patch. I've fixed these issues and new
> version is attached.
>
>
Can you describe the process used to generate the sample WAL segment?

I'd like to turn it into a TAP test to go along with the patch.

--
Craig Ringer http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Craig Ringer 2016-03-31 01:04:35 Re: So, can we stop supporting Windows native now?
Previous Message Craig Ringer 2016-03-31 00:54:39 Re: Very small patch for decode.c