Fri, 16 Jul 2021 15:40:08 +0200 net.server_epoll: Optimize concatenation of exactly 2 buffer chunks
Kim Alvefur <zash@zash.se> [Fri, 16 Jul 2021 15:40:08 +0200] rev 11702
net.server_epoll: Optimize concatenation of exactly 2 buffer chunks Saves a function call. I forget if I measured this kind of thing but IIRC infix concatenation is faster than a function call up to some number of items, but let's stop at 2 here.
Fri, 16 Jul 2021 15:38:38 +0200 net.server_epoll: Avoid allocating a buffer table for single writes
Kim Alvefur <zash@zash.se> [Fri, 16 Jul 2021 15:38:38 +0200] rev 11701
net.server_epoll: Avoid allocating a buffer table for single writes writebuffer is now string | { string } Saves the allocation of a buffer table until the second write, which could be rare, especially with opportunistic writes.
Fri, 16 Jul 2021 02:28:32 +0200 net.server_epoll: Optionally let go of buffers
Kim Alvefur <zash@zash.se> [Fri, 16 Jul 2021 02:28:32 +0200] rev 11700
net.server_epoll: Optionally let go of buffers Reusing an already existing buffer table would reduce garbage, but keeping it while idle is a waste.
Fri, 16 Jul 2021 01:21:05 +0200 net.server_epoll: Propagate returns from opportunistic writes
Kim Alvefur <zash@zash.se> [Fri, 16 Jul 2021 01:21:05 +0200] rev 11699
net.server_epoll: Propagate returns from opportunistic writes So that if a write ends up writing directly to the socket, it gets the actual return value
Thu, 15 Jul 2021 01:38:44 +0200 net.server_epoll: Set minimum wait time to 1ms, matching epoll
Kim Alvefur <zash@zash.se> [Thu, 15 Jul 2021 01:38:44 +0200] rev 11698
net.server_epoll: Set minimum wait time to 1ms, matching epoll A timeout value less than 0.001 gets turned into zero on the C side, so epoll_wait() returns instantly and essentially busy-loops up to 1ms, e.g. when a timer event ends up scheduled (0, 0.001)ms into the future. Unsure if this has much effect in practice, but it may waste a small amount of CPU time. How much would depend on how often this ends up happening and how fast the CPU gets trough main loop iterations.
Thu, 15 Jul 2021 00:38:27 +0200 prosodyctl: Add a note about checking the order of listed commands
Kim Alvefur <zash@zash.se> [Thu, 15 Jul 2021 00:38:27 +0200] rev 11697
prosodyctl: Add a note about checking the order of listed commands Should Plugin really be first? What order makes the most sense?
Thu, 15 Jul 2021 00:37:47 +0200 prosodyctl: Add cert to command listing
Kim Alvefur <zash@zash.se> [Thu, 15 Jul 2021 00:37:47 +0200] rev 11696
prosodyctl: Add cert to command listing This hides a whole bunch of subcommands tho, maybe those should be explicitly listed?
Thu, 15 Jul 2021 00:35:57 +0200 prosodyctl: Add 'shell' to command listing
Kim Alvefur <zash@zash.se> [Thu, 15 Jul 2021 00:35:57 +0200] rev 11695
prosodyctl: Add 'shell' to command listing
Sun, 30 May 2021 12:27:12 +0200 prosodyctl: Add 'check' to command listing (fixes #1622)
Kim Alvefur <zash@zash.se> [Sun, 30 May 2021 12:27:12 +0200] rev 11694
prosodyctl: Add 'check' to command listing (fixes #1622) Along with infrastructure for the other commands that live in external modules.
Wed, 14 Jul 2021 22:27:12 +0200 net.server_epoll: Add setting for disabling the Nagle algorithm
Kim Alvefur <zash@zash.se> [Wed, 14 Jul 2021 22:27:12 +0200] rev 11693
net.server_epoll: Add setting for disabling the Nagle algorithm Nagle increases latency and is the bane of all networking!
(0) -10000 -3000 -1000 -300 -100 -10 +10 +100 +300 +1000 tip