From cbc2890cb89b81cb6b9e8fabf3f196d9a6110dce Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sun, 19 Sep 2021 12:50:22 +0000 Subject: lei/store: use SOCK_SEQPACKET rather than pipe This has several advantages: * no need to use ipc.lock to protect a pipe for non-atomic writes * ability to pass FDs. In another commit, this will let us simplify lei->sto_done_request and pass newly-created sockets to lei/store directly. disadvantages: - an extra pipe is required for rare messages over several hundred KB, this is probably a non-issue, though The performance delta is unknown, but I expect shards (which remain pipes) to be the primary bottleneck IPC-wise for lei/store. --- lib/PublicInbox/LeiImportKw.pm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'lib/PublicInbox/LeiImportKw.pm') diff --git a/lib/PublicInbox/LeiImportKw.pm b/lib/PublicInbox/LeiImportKw.pm index 402125cf..2863d17f 100644 --- a/lib/PublicInbox/LeiImportKw.pm +++ b/lib/PublicInbox/LeiImportKw.pm @@ -37,7 +37,7 @@ sub ck_update_kw { # via wq_io_do $self->{lse}->kw_changed(undef, $kw, \@docids) or return; $self->{verbose} and $self->{lei}->qerr('# '.unpack('H*', $oidbin)." => @$kw\n"); - $self->{sto}->ipc_do('set_eml_vmd', undef, { kw => $kw }, \@docids); + $self->{sto}->wq_do('set_eml_vmd', undef, { kw => $kw }, \@docids); } sub ikw_done_wait { -- cgit v1.2.3-24-ge0c7