urbit/pkg
fang 1d4ee5a7b5
eyre: kick busy subscriptions if client not acking
In order to curb event queue growth when a client for whatever reason
isn't acking the events we send out, we implement a mechanism for
detecting such "clogging", and proactively kick subscriptions which are
adding too many events to the queue.

If the client hasn't sent an ack for ~s30, any subscription that accrues
more than 50 unacked %facts gets closed to prevent further buildup.

Upon reconnecting, the client will see %kick for the relevant
subscriptions and can open a new subscription as appropriate.

Includes a simple test for this behavior, and updates /app/dbug to be
able to display the newly tracked statistics.
2020-10-19 15:56:05 +02:00
..
arvo eyre: kick busy subscriptions if client not acking 2020-10-19 15:56:05 +02:00
ent Add 'pkg/ent/' from commit '31ac2913f14c6f7631f5792ad942605fb2d9fb87' 2019-03-04 16:49:14 -08:00
ge-additions Pull in latest v0.8.0.rc changes 2019-07-16 15:59:39 -07:00
herb Squashed commit of the following: 2020-06-25 03:25:31 -04:00
hs vere: bumps urbit version to v0.10.8 2020-07-23 18:15:35 -07:00
interface eyre: kick busy subscriptions if client not acking 2020-10-19 15:56:05 +02:00
libaes_siv jets: switch openssl to the loom allocator. 2020-05-29 15:51:53 -07:00
urbit vere: bumps urbit version to v0.10.8 2020-07-23 18:15:35 -07:00