Re: [HACKERS] Logical decoding and walsender timeouts

2016-10-31 Thread Vladimir Gordiychuk
>>> When sending a big message, WalSndWriteData() notices that it's >>> approaching timeout and tries to send a keepalive request, but the >>> request just gets buffered behind the remaining output plugin data and >>> isn't seen by the client until the client has received the rest of the >>> pendin

Re: [HACKERS] Logical decoding and walsender timeouts

2016-10-31 Thread Craig Ringer
On 31 October 2016 at 16:52, Andres Freund wrote: > Hi, > > On 2016-10-31 16:34:38 +0800, Craig Ringer wrote: >> TL;DR: Logical decoding clients need to generate their own keepalives >> and not rely on the server requesting them to prevent timeouts. Or >> admins should raise the wal_sender_timeout

Re: [HACKERS] Logical decoding and walsender timeouts

2016-10-31 Thread Andres Freund
Hi, On 2016-10-31 16:34:38 +0800, Craig Ringer wrote: > TL;DR: Logical decoding clients need to generate their own keepalives > and not rely on the server requesting them to prevent timeouts. Or > admins should raise the wal_sender_timeout by a LOT when using logical > decoding on DBs with any big

[HACKERS] Logical decoding and walsender timeouts

2016-10-31 Thread Craig Ringer
Hi all I've been investigating some intermittent timeout issues I've seen with BDR users in the wild and I think I've identified an issue with how logical decoding sends data and handles feedback. TL;DR: Logical decoding clients need to generate their own keepalives and not rely on the server req