Hello,
During reading the documentation of libpq [1] , I found the following
description:
In the nonblocking state, calls to PQsendQuery, PQputline, PQputnbytes,
PQputCopyData, and PQendcopy will not block but instead return an error
if they need to be called again.
[1] https://www.postgresql.org/docs/devel/libpq-async.html
However, looking into the code, PQsendQuery seems not to return an error
in non-bloking mode even if unable to send all data. In such cases,
pqSendSome will return 1 but it doesn't cause an error. Moreover,
we would not need to call PQsendQuery again. Indead, we need to call
PQflush until it returns 0, as documented with regard to PQflush.
Do we need to fix the description of PQsetnonblocking?
Regards,
Yugo Nagata
--
Yugo NAGATA <nagata@sraoss.co.jp>