Question about non-blocking mode in libpq

Поиск
Список
Период
Сортировка
От Yugo NAGATA
Тема Question about non-blocking mode in libpq
Дата
Msg-id 20210713115949.702986955f8ccf23fa81073c@sraoss.co.jp
обсуждение исходный текст
Ответы Re: Question about non-blocking mode in libpq
Список pgsql-hackers
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>



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Jeff Davis
Дата:
Сообщение: Re: Synchronous commit behavior during network outage
Следующее
От: David Rowley
Дата:
Сообщение: Re: [PATCH] Use optimized single-datum tuplesort in ExecSort