urbit/pkg/arvo/sys/vane
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
..
ames.hoon ames: print failed scrys 2020-09-18 16:06:13 -04:00
behn.hoon Merge branch 'release/next-sys' 2020-07-22 14:31:17 -04:00
clay.hoon clay: speed up +find-merge-points 2020-10-16 11:21:02 -07:00
dill.hoon arvo: adds |meld, triggering memory unification 2020-09-09 22:50:43 -07:00
eyre.hoon eyre: kick busy subscriptions if client not acking 2020-10-19 15:56:05 +02:00
ford.hoon ford,kiln: nicer errors 2020-06-24 21:24:58 -07:00
gall.hoon gall: forget eyre subscriptions once 2020-08-27 13:23:36 +02:00
iris.hoon /sys: |mass works again 2020-05-07 04:51:08 -04:00
jael.hoon jael, eyre: Add a way to reset the web login code 2020-07-31 11:35:48 -07:00