Re: XLogBeginRead's header comment lies

Поиск
Список
Период
Сортировка
От Dilip Kumar
Тема Re: XLogBeginRead's header comment lies
Дата
Msg-id CAFiTN-vK10wesMwZgbcGOgGOEeTQ-XzQ45BuAUxwa0ErxmsceQ@mail.gmail.com
обсуждение исходный текст
Ответ на Re: XLogBeginRead's header comment lies  (Dilip Kumar <dilipbalaut@gmail.com>)
Ответы Re: XLogBeginRead's header comment lies  (Robert Haas <robertmhaas@gmail.com>)
Список pgsql-hackers
On Wed, Aug 17, 2022 at 11:31 AM Dilip Kumar <dilipbalaut@gmail.com> wrote:
>
> On Wed, Aug 17, 2022 at 11:18 AM Dilip Kumar <dilipbalaut@gmail.com> wrote:
> >
> > On Tue, Aug 16, 2022 at 11:28 PM Robert Haas <robertmhaas@gmail.com> wrote:
> > >
> >
> > Yeah I think it makes sense to make it work as per the comment in
> > XLogBeginRecord().  I think if we modify the Assert as per the comment
> > of XLogBeginRecord() then the remaining code of the
> > XLogDecodeNextRecord() is capable enough to take care of skipping the
> > page header if we are pointing at the beginning of the block.
> >
> > See attached patch.
> >
>
> I think that is not sufficient, if there is a record continuing from
> the previous page and we are pointing to the start of the page then
> this assertion is not sufficient.  I think if the
> targetRecOff is zero then we should additionally read the header and
> verify that XLP_FIRST_IS_CONTRECORD is not set.

Thinking again, there is already a code in XLogDecodeNextRecord() to
error out if XLP_FIRST_IS_CONTRECORD is set so probably we don't need
to do anything else and the previous patch with modified assert should
just work fine?

-- 
Regards,
Dilip Kumar
EnterpriseDB: http://www.enterprisedb.com



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Aleksander Alekseev
Дата:
Сообщение: Proposal: CREATE/ALTER DOMAIN ... STORAGE/COMPRESSION = ...
Следующее
От: Bruce Momjian
Дата:
Сообщение: Re: Regarding availability of 32bit client drivers for postgresql 13/14