Re: log spam with postgres_fdw
On Sun, Sep 15, 2019 at 11:14 AM Tom Lane wrote: > Jeff Janes writes: > > When closing the local session which had used postgres_fdw over an ssl > > connection, I get log spam on the foreign server saying: > > LOG: could not receive data from client: Connection reset by peer > > It is easy to reproduce, but you must be using ssl to do so. > > On searching, I see that a lot of people have run into this issue, with > > considerable confusion, but as far as I can see it has never been > diagnosed. > > In > > https://www.postgresql.org/message-id/flat/3DPLMQIC.YU6IFMLY.3PLOWL6W%40FQT5M7HS.IFBAANAE.A7GUPCPM > > Thanks, I had not spotted that one, I guess because the log message itself was not in the subject so it ranked lower. > we'd concluded that the issue is probably that postgres_fdw has no > logic to shut down its external connections when the session closes. > It's not very clear why the SSL dependency, but we speculated that > adding an on_proc_exit callback to close the connection(s) would help. > > It is easy to reproduce the ssl dependency without any FDW, just by doing a kill -9 on psql. Apparently the backend process for unencrypted connections are happy to be ghosted, while ssl ones are not; which seems like an odd distinction to make. So should this be addressed on both sides (the server not whining, and the client doing the on_proc_exit anyway?). I can take a stab at the client side one, but I'm over my head on the ssl connection handling logic on the server side. Cheers, Jeff
Re: log spam with postgres_fdw
Jeff Janes writes: > When closing the local session which had used postgres_fdw over an ssl > connection, I get log spam on the foreign server saying: > LOG: could not receive data from client: Connection reset by peer > It is easy to reproduce, but you must be using ssl to do so. > On searching, I see that a lot of people have run into this issue, with > considerable confusion, but as far as I can see it has never been diagnosed. In https://www.postgresql.org/message-id/flat/3DPLMQIC.YU6IFMLY.3PLOWL6W%40FQT5M7HS.IFBAANAE.A7GUPCPM we'd concluded that the issue is probably that postgres_fdw has no logic to shut down its external connections when the session closes. It's not very clear why the SSL dependency, but we speculated that adding an on_proc_exit callback to close the connection(s) would help. I imagine dblink has a similar issue. regards, tom lane
log spam with postgres_fdw
I'm sending this to hackers, because it is not exactly a bug, and it can't be addressed from userland. I think it is a coding issue, although I haven't identified the exact code. When closing the local session which had used postgres_fdw over an ssl connection, I get log spam on the foreign server saying: LOG: could not receive data from client: Connection reset by peer It is easy to reproduce, but you must be using ssl to do so. On searching, I see that a lot of people have run into this issue, with considerable confusion, but as far as I can see it has never been diagnosed. Is there anything that can be done about this, other than just learning to ignore it? Cheers, Jeff -- set up ssl, I won't walk through those steps. \! pgbench -i create extension postgres_fdw ; create server ssl foreign data wrapper postgres_fdw OPTIONS ( host '127.0.0.1'); create schema fgn; create user MAPPING FOR CURRENT_USER SERVER ssl; import foreign schema public from server ssl into fgn; select count(*) from fgn.pgbench_history; \q