Andres Freund <andres@anarazel.de> writes:
> On 2022-02-10 20:25:28 -0500, Tom Lane wrote:
>> I was staring at that for awhile too. It's my own code (from 1f39a1c0641)
>> but it sure confuses me now; at the very least the code is not in sync
>> with the comment. However, it's been that way for a couple years now and
>> we've not had complaints suggesting it's broken, so maybe it's the comment
>> that's wrong.
> I wonder if it could be part of the whole "walreceiver on windows not noticing
> connection death" business.
Hmm, maybe. It sure *looks* like we need to do
- return conn->asyncStatus == PGASYNC_BUSY || conn->write_failed;
+ return conn->asyncStatus == PGASYNC_BUSY && !conn->write_failed;
If anyone who can reproduce that Windows problem wants to try that ...
regards, tom lane