pulse-server: improve message queue pruning
-
Firstly, separate the message dropping logic into its own
drop_from_out_queue()
function. -
Secondly, do not check earlier messages if the NEW event for a particular object has been reached when checking a REMOVE event for that object.
-
Thirdly, if - while processing a REMOVE event - the corresponding NEW event is found and dropped, drop the REMOVE event as well.
See #1840 (closed)