On Thu, Nov 22, 2018 at 06:31:04PM +0800, Paul Guo wrote: > Yes, please see the attached patch.
Thanks, I have reviewed your patch, and could not resist to change SyncRepReleaseWaiters() on top of the rest with a comment to not be confused about the WAL sender states allowed to release waiters.
The previous experience is proving that it seems unwise to rely on the order of the elements in WalSndState, so I have tweaked things so as the state is listed for all the code paths involved.