Hello!
Question generally to (libpq) developers.
According to http://www.postgresql.org/docs/9.4/static/libpq-async.html:
"PQsendQuery cannot be called again (on the same connection) until PQgetResult
has returned a null pointer, indicating that the command is done."
As I guess this is also true for all PQsend* functions, like PQsendQueryPrepared,
although this is not explicitly stated in the documentation.
So question is why this limitaion exists?
Why PQgetResult(PGconn *conn) operates on connection,
and not on some unique handler that each "PQsend*" could return.
Is it limitaion of libpq or architecture of postgresql backend or backend-frontend protocol?