Open gkc opened 1 year ago
Adding @purnimavenkatasubbu to help develop a test suite for this scenario detailed in the ticket
No impl progress during PR47 due to lots of other unplanned work. Moving to PR48. Reducing estimate to 5SP as can reuse several aspects of the fsync implementation.
Describe the bug
MonitorVerbHandler.processVerb
will hold onto the event loop until it completes. In turn this means that, if themonitor:
request results in a large number of notifications being sent to the client in the initial monitor response, the server becomes completely unresponsive to other requests.MonitorVerbHandler.processVerb
:receivedNotifications
list is large, no other event will be handled until thefor
loop completes.There are additional issues that should be cleaned up while fixing this bug
receivedNotifications
list is very large, then it could cause the server process to use a lot of memorymonitor
requestTo Reproduce Steps to reproduce the behavior:
@bob
send 10,000 notifications to@alice
alice
client sendmonitor:0
to@alice
secondaryExpected behavior
MonitorVerbHandler.processVerb
needs to allow another event to get a look-in. (Easy)