Re: hot_standby_feedback doesn't work on busy servers in 9.3+

Поиск
Список
Период
Сортировка
От Amit Kapila
Тема Re: hot_standby_feedback doesn't work on busy servers in 9.3+
Дата
Msg-id CAA4eK1LtJa1KYk1kVq8uFyoLbZuVVL5E2ttox1kAEgBHYiG3vQ@mail.gmail.com
обсуждение исходный текст
Ответ на Re: hot_standby_feedback doesn't work on busy servers in 9.3+  (Andres Freund <andres@2ndquadrant.com>)
Ответы Re: hot_standby_feedback doesn't work on busy servers in 9.3+  (Heikki Linnakangas <hlinnakangas@vmware.com>)
Список pgsql-bugs
On Thu, Jan 16, 2014 at 2:14 PM, Andres Freund <andres@2ndquadrant.com> wrote:
> On 2014-01-16 10:26:51 +0530, Amit Kapila wrote:
>
>> > To a good part that seems to have been introduced in
>> > 6f60fdd7015b032bf49273c99f80913d57eac284.
>>
>>    I don't see that above commit has introduced this behaviour, as
>>    the code in question seems to be there without commit as well,
>>    means that HS feedback is only sent when we don't receive data in WAL
>>    receiver.
>
> Part of that commit is the following hunk:
>
> @@ -609,19 +665,25 @@ XLogWalRcvFlush(bool dying)
>
>         /* Also let the master know that we made some progress */
>         if (!dying)
> -       {
> -           XLogWalRcvSendReply();
> -           XLogWalRcvSendHSFeedback();
> -       }
> +           XLogWalRcvSendReply(false, false);
>     }
>  }
>
> Before that commit XLogWalRcvFlush, which is in the "busy" path, sent
> hot standby feedback. After that only the idle path does so.

Okay, Thanks for pointing out.
This is clearly a problem and I think that part of patch should be reverted.
I have figured out how this has happened, actually during the patch
(Improve replication connection timeouts) development, there was an idea
to merge Reply and Feedback messages during which this call got removed
but later on that doesn't appear to be good way of proceeding, so we decide
not merge the messages. While kicking out merge of messages part, it seems
to me that we forgot to add this back.

Heikki, do you remember any other reason for this problem?
I had referred below thread and the mails following it to find this out:
http://www.postgresql.org/message-id/6C0B27F7206C9E4CA54AE035729E9C382853645A@szxeml509-mbs

Attached patch should fix this problem.


With Regards,
Amit Kapila.
EnterpriseDB: http://www.enterprisedb.com

Вложения

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

Предыдущее
От: Andres Freund
Дата:
Сообщение: Re: hot_standby_feedback doesn't work on busy servers in 9.3+
Следующее
От: Heikki Linnakangas
Дата:
Сообщение: Re: hot_standby_feedback doesn't work on busy servers in 9.3+