00:13 dogbert11 joined 00:16 dogbert17 left 00:28 japhb joined
japhb Does react {} make any guarantees about (lack of) starvation across the whenever blocks? If so, what exactly is guaranteed? 00:35
Reason: I'm looking at a rearchitecture of the internals of a server I've been working on, and I'm trying to avoid a noisy client from starving other clients on input, or a spammy client (attempting to message all other clients continuously, for instance) being able to starve other server activity on output 00:36
Slightly more subtle but same problem is if a small number of clients can work together to starve all others (as might happen even if react doesn't drain a single whenever source dry before going to the next, if there is no guarantee to visit *all* whenever sources that have data before returning to a previous active source) 00:39
And if there is no intrinsic guarantee now, 1) Is it planned for the future? 2) What's the recommended workaround? 00:40
01:08 squashable6 left 01:11 squashable6 joined 01:32 MasterDuke left 01:37 dogbert11 left
ugexe i cant answer that, but it sparked me to try using a bunch of whenevers and the following doesn't fire the second whenevers (but will if s/100000/10000/ on my system) 02:07
react { for ^100000 { whenever Supply.interval(60) { }; }; say "done registering initial whenevers"; whenever Supply.interval(1) { say $_ } }
not sure why anyone would do such a thing of course 02:09
02:26 leont left 05:49 sortiz joined 07:03 ZzZombo joined 07:04 ZzZombo left 08:13 domidumont joined 10:30 El_Che joined, El_Che left 11:40 leont joined
[Tux] Rakudo v2020.12-128-g3235f3e42 (v6.d) on MoarVM 2020.12-98-gf6c505dae
csv-ip5xs0.810 - 0.814
csv-ip5xs-207.817 - 8.502
csv-parser25.197 - 26.225
csv-test-xs-200.400 - 0.408
test7.958 - 8.189
test-t1.854 - 1.859
test-t --race0.843 - 0.928
test-t-2029.927 - 30.380
test-t-20 --race8.904 - 9.582
11:53
12:29 sivoais_ joined 12:31 sivoais left 13:23 sortiz left 15:58 patrickb joined 16:48 dogbert11 joined, dogbert11 left 17:11 dogbert17 joined 17:57 codesections joined 18:16 domidumont left 18:55 MasterDuke joined 19:55 evalable6 left, linkable6 left 19:56 evalable6 joined 19:57 linkable6 joined 20:57 patrickb left
japhb jnthn: Did you design react to avoid starvation of whenevers under heavy load? See question from last night ^^ 21:10
tellable6 japhb, I'll pass your message to jnthn
21:21 raydiak joined 21:40 rypervenche joined 22:48 sortiz joined 23:36 MasterDuke left