Mercurial > prosody-hg
comparison net/server_epoll.lua @ 13932:334fb7adb0bc 13.0
net.server_epoll: Restore idle checks after pause (e.g. rate limits)
It seems that under some conditions the read timeout is not recreated.
This led to various dead connection accumulating.
Code review noticed this case, easily triggered by enabling rate limits.
Uncertain if there may be others.
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Sun, 24 Aug 2025 18:15:09 +0200 |
| parents | 2cfb6625b6d2 |
| children | 107a3d9c147b e27d94d8f505 |
comparison
equal
deleted
inserted
replaced
| 13923:e6087c733899 | 13932:334fb7adb0bc |
|---|---|
| 964 self:set(true); | 964 self:set(true); |
| 965 self:noise("Resuming after pause"); | 965 self:noise("Resuming after pause"); |
| 966 if self.conn and self.conn:dirty() then | 966 if self.conn and self.conn:dirty() then |
| 967 self:noise("Have buffered incoming data to process"); | 967 self:noise("Have buffered incoming data to process"); |
| 968 self:onreadable(); | 968 self:onreadable(); |
| 969 else | |
| 970 self:setreadtimeout(); | |
| 969 end | 971 end |
| 970 end); | 972 end); |
| 971 end | 973 end |
| 972 | 974 |
| 973 function interface:setlimit(Bps) | 975 function interface:setlimit(Bps) |
