nim-libp2p/libp2p/muxers/mplex
Jacek Sieka 17e00e642a
limit write queue length (#376)
To break a potential read/write deadlock, gossipsub uses an unbounded
queue for writes - when peers are too slow to process this queue, it may
end up growing without bounds causing high memory usage.

Here, we introduce a maximum write queue length after which the peer is
disconnected - the queue is generous enough that any "normal" usage
should be fine - writes that are `await`:ed are not affected, only
writes that are launched in an `asyncSpawn` task or similar.

* avoid unnecessary copy of message when there are no send observers
* release message memory earlier in gossipsub
* simplify pubsubpeer logging
2020-09-24 18:43:20 +02:00
..
coder.nim channel close race and deadlock fixes (#368) 2020-09-21 19:48:19 +02:00
lpchannel.nim limit write queue length (#376) 2020-09-24 18:43:20 +02:00
mplex.nim channel close race and deadlock fixes (#368) 2020-09-21 19:48:19 +02:00