diff options
author | Kim Alvefur <zash@zash.se> | 2021-11-16 13:37:18 +0100 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2021-11-16 13:37:18 +0100 |
commit | 49e86e78c527c25b1fa195c2a4dd22b9bca222ca (patch) | |
tree | 4ae3b0fba280c2a86277cd4e65a69fc37434b0b5 /plugins | |
parent | eecabd740d752249e6e731e2660ad5053caba431 (diff) | |
download | prosody-49e86e78c527c25b1fa195c2a4dd22b9bca222ca.tar.gz prosody-49e86e78c527c25b1fa195c2a4dd22b9bca222ca.zip |
mod_csi_simple: Unlock writes after event, to allow things to be queued
E.g. mod_smacks could queue an <r>, which would be more likely to be
included in the same write and TCP segment as the previously buffered
data, reducing syscalls and network packets needing to be sent.
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/mod_csi_simple.lua | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/plugins/mod_csi_simple.lua b/plugins/mod_csi_simple.lua index 74fae4c8..a3e08264 100644 --- a/plugins/mod_csi_simple.lua +++ b/plugins/mod_csi_simple.lua @@ -124,9 +124,9 @@ local function manage_buffer(stanza, session) end flush_reasons:with_labels(why or "important"):add(1); session.log("debug", "Flushing buffer (%s; queue size is %d)", why or "important", session.csi_counter); - session.conn:resume_writes(); session.state = "flushing"; module:fire_event("csi-flushing", { session = session }); + session.conn:resume_writes(); else session.log("debug", "Holding buffer (%s; queue size is %d)", why or "unimportant", session.csi_counter); stanza = with_timestamp(stanza, jid.join(session.username, session.host)) |