]> source.dussan.org Git - rspamd.git/commit
[Rework] Use blocking socket for IPC between main and workers
authorVsevolod Stakhov <vsevolod@rspamd.com>
Sun, 23 Oct 2022 17:07:22 +0000 (18:07 +0100)
committerVsevolod Stakhov <vsevolod@rspamd.com>
Sun, 23 Oct 2022 17:07:22 +0000 (18:07 +0100)
commitb1d1a3c45e9447ac9de3a2a17901366fe821e5f4
tree596e0bb4397b85ef5452edb2679a7d3d5cb116fe
parent5a13ff46447fc15c3c941517681525eed0d4a458
[Rework] Use blocking socket for IPC between main and workers

 There are no reasons why control pipes are blocking: the messages
 there are rare and are strictly bounded by command sizes, so if we block
 on some pipe, it is ok, as we still poll that for all operations.
 It is also impossible to block on writing in normal conditions.
 And if the conditions are not normal, e.g. a worker is unresponsive, then
 we can safely think that the non-blocking behaviour as it is implemented
 currently will not make things better, as it would lead to incomplete
 reads/writes that are not handled anyhow and are totally broken from the
 beginning.
src/libserver/worker_util.c