On Fri, 2021-12-03 at 11:37 +0100, Daniel Frey wrote:
> I need to know which functions of libpq may "hang", depending on network
> issues. For some functions is
> seems to be clear, as they only work locally, other functions are clearly
> documented to wait on some
> network interaction. But for some functions, it is unclear on whether they
> are guaranteed to work
> locally without any possibility to hang or not, e.g. PQfinish(), PQstatus(),
> PQtransactionStatus(), etc.
>
> Is there a complete list of methods that might wait for network communication?
No; you have to read the code.
For example, PGstatus is defined like this:
PQstatus(const PGconn *conn)
{
if (!conn)
return CONNECTION_BAD;
return conn->status;
}
This does not access the network.
Yours,
Laurenz Albe