On 5. Dec 2021, at 21:32, Daniel Frey <d.frey@xxxxxx> wrote: > >> On 5. Dec 2021, at 17:01, Tom Lane <tgl@xxxxxxxxxxxxx> wrote: >> >> Daniel Frey <d.frey@xxxxxx> writes: >>> With all that said, I think that PostgreSQL/libpq should have a clear, documented way to get rid of a connection that is guaranteed to not hang. It has something similar for almost all other methods like opening connections, sending request, retrieving results. Why stop there? >> >> AFAICS, PQfinish() already acts that way, at least up to the same level of >> guarantee as you have for "all other methods". That is, if you previously >> set the connection into nonblock mode, it won't block. One more question about this: What is the purpose of *not* using nonblocking mode with PQfinish()? Is there any benefit to the user in waiting for something? Or could it make sense for PQfinish() to always use nonblocking mode internally?