On Windows, close the client socket explicitly during backend shutdown.
Tom Lane <tgl@sss.pgh.pa.us>
On Windows, close the client socket explicitly during backend shutdown. It turns out that this is necessary to keep Winsock from dropping any not-yet-sent data, such as an error message explaining the reason for process termination. It's pretty weird that the implicit close done by the kernel acts differently from an explicit close, but it's hard to argue with experimental results. Independently submitted by Alexander Lakhin and Lars Kanis (comments by me, though). Back-patch to all supported branches. Discussion: https://postgr.es/m/90b34057-4176-7bb0-0dbb-9822a5f6425b@greiz-reinsdorf.de Discussion: https://postgr.es/m/16678-253e48d34dc0c376@postgresql.org
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/libpq/pqcomm.c | modified | +20 −7 |
Discussion
- BUG #16678: The ecpg connect/test5 test sometimes fails on Windows 8 messages · 2020-10-19 → 2020-10-26
- Windows: Wrong error message at connection termination 21 messages · 2021-11-17 → 2022-01-15