Re: "caught_up" status in walsender

Поиск
Список
Период
Сортировка
От Robert Haas
Тема Re: "caught_up" status in walsender
Дата
Msg-id AANLkTiknR4P8P7TVf7cNJu4eRBwNhr-qliKPhK8BQedz@mail.gmail.com
обсуждение исходный текст
Ответ на "caught_up" status in walsender  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
On Wed, Jun 2, 2010 at 2:44 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> I wrote:
>> I'm still inclined to apply the part of Simon's patch that adds a
>> transmit timestamp to each SR send chunk.  That would actually be
>> completely unused by the slave given my proposal above, but I think that
>> it is an important step to take to future-proof the SR protocol against
>> possible changes in the slave-side timing logic.
>
> On further contemplation, it seems like the protocol needs another field
> besides that: each record should also carry a boolean indicating whether
> walsender.c thinks it is currently "caught up", ie the record carries
> all WAL data up to the current end of WAL.  If the sender is not caught
> up, then the receiver should apply max_archive_delay not
> max_streaming_delay.  In this way, WAL chunks that are a little bit
> behind current time will be treated the same way whether they come
> across the SR link or via the archive.

I'm not sure that makes sense.  I thought the point of separating the
archive and streaming cases was that the same timeout wouldn't
necessarily be correct for a 16MB WAL file as it would for a 16-byte
WAL record you've just received.  IOW, you might want
max_archive_delay > max_streaming_delay.  The original proposal also
seems somewhat easier to understand, to me at least.

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise Postgres Company


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

Предыдущее
От: Robert Haas
Дата:
Сообщение: Re: recovery getting interrupted is not so unusual as it used to be
Следующее
От: Robert Haas
Дата:
Сообщение: Re: How to pass around collation information