pgsql: Assert that WaitLatchOrSocket callers cannot wait only for writa

Поиск
Список
Период
Сортировка
От Tom Lane
Тема pgsql: Assert that WaitLatchOrSocket callers cannot wait only for writa
Дата
Msg-id E1SU1dP-0007Zq-Ca@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Assert that WaitLatchOrSocket callers cannot wait only for writability.

Since we have chosen to report socket EOF and error conditions via the
WL_SOCKET_READABLE flag bit, it's unsafe to wait only for
WL_SOCKET_WRITEABLE; the caller would never be notified of the socket
condition, and in some of these implementations WaitLatchOrSocket would
busy-wait until something else happens.  Add this restriction to the API
specification, and add Asserts to check that callers don't try to do that.

At some point we might want to consider adjusting the API to relax this
restriction, but until we have an actual use case for waiting on a
write-only socket, it seems premature to design a solution.

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/e42a21b9e6c9b9e6346a34b62628d48ff2fc6ddf

Modified Files
--------------
src/backend/port/unix_latch.c  |   10 ++++++++--
src/backend/port/win32_latch.c |    2 ++
2 files changed, 10 insertions(+), 2 deletions(-)


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

Предыдущее
От: Peter Eisentraut
Дата:
Сообщение: pgsql: Remove unused AC_DEFINE symbols
Следующее
От: Tom Lane
Дата:
Сообщение: pgsql: Put back AC_REQUIRE([AC_STRUCT_TM]).