From: | Heikki Linnakangas <hlinnakangas(at)vmware(dot)com> |
---|---|
To: | Amit Kapila <amit(dot)kapila16(at)gmail(dot)com> |
Cc: | Andres Freund <andres(at)2ndquadrant(dot)com>, PostgreSQL Bugs <pgsql-bugs(at)postgresql(dot)org> |
Subject: | Re: hot_standby_feedback doesn't work on busy servers in 9.3+ |
Date: | 2014-01-16 21:14:17 |
Message-ID: | 52D84BA9.1070902@vmware.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
On 01/16/2014 12:34 PM, Amit Kapila wrote:
> On Thu, Jan 16, 2014 at 2:14 PM, Andres Freund <andres(at)2ndquadrant(dot)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
From | Date | Subject | |
---|---|---|---|
Next Message | Heikki Linnakangas | 2014-01-16 21:24:13 | Re: hot_standby_feedback doesn't work on busy servers in 9.3+ |
Previous Message | Amit Kapila | 2014-01-16 10:34:18 | Re: hot_standby_feedback doesn't work on busy servers in 9.3+ |