Re: hot_standby_feedback doesn't work on busy servers in 9.3+ - Mailing list pgsql-bugs

From Heikki Linnakangas
Subject Re: hot_standby_feedback doesn't work on busy servers in 9.3+
Date
Msg-id 52D84BA9.1070902@vmware.com
Whole thread Raw
In response to Re: hot_standby_feedback doesn't work on busy servers in 9.3+  (Amit Kapila <amit.kapila16@gmail.com>)
List pgsql-bugs
On 01/16/2014 12:34 PM, Amit Kapila wrote:
> 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.

Yeah, that's probably what happened. Applied, thanks!

- Heikki

pgsql-bugs by date:

Previous
From: Amit Kapila
Date:
Subject: Re: hot_standby_feedback doesn't work on busy servers in 9.3+
Next
From: Heikki Linnakangas
Date:
Subject: Re: hot_standby_feedback doesn't work on busy servers in 9.3+