Open drforr opened 8 years ago
I can verify that the process dies when concurrency exceeds 15
Will try and reproduce myself when I get home from work
The recent changes in the Thread Pool Scheduler seem to have largely fixed this. It can quite happily take 32 concurrent clients now. With 64 I get one:
[ERROR] [3550] [4] This type (Mu) does not support elems in method handler at /home/jonathan/devel/perl6/p6-HTTP-Server-Tiny/lib/HTTP/Server/Tiny.pm6 (HTTP::Server::Tiny) line 527
in block at /home/jonathan/devel/perl6/p6-HTTP-Server-Tiny/lib/HTTP/Server/Tiny.pm6 (HTTP::Server::Tiny) line 513
This is with:
```Rakudo version 2017.09-173-g4d0ead240 built on MoarVM version 2017.09.1-49-gb3dd812aa````
Running on a Ubuntu 14.04 64-bit VM, host Windows 7 machine running on Intel Core i5
$ perl6 -v This is Rakudo version 2016.03-45-gd0c675c built on MoarVM version 2016.03-46-g50c7f6a implementing Perl 6.c.
$ perl6 -Ilib bin/crustup eg/hello.p6sgi # in a tmux session $ siege -f siege.txt -r 1 -c 15 # where siege.txt consists of one line, 'http://localhost:5000/'
Sporadically generates this traceback, which I can't reliably reproduce. It also locks up at 'siege -c 16', probably due to threading limitations though I haven't yet played with the settings.
[ERROR] [3288] [15] Cannot call new(Buf); none of these signatures match: in method throw at gen/moar/m-CORE.setting line 20979 in sub at gen/moar/m-CORE.setting line 23202 in any at gen/moar/m-Metamodel.nqp line 1727 in code at sources/8C3F1787E43A9A5F01C89A85BDAC9C4C2B64A6E0 (IO::Blob) line 27 in method new at sources/8C3F1787E43A9A5F01C89A85BDAC9C4C2B64A6E0 (IO::Blob) line 27 in block at sources/41D120CC8C5AC1ADBAA2CC7E606E4F8710D84044 (HTTP::Server::Tiny) line 212 in method parse-body at sources/41D120CC8C5AC1ADBAA2CC7E606E4F8710D84044 (HTTP::Server::Tiny) line 167 in method handle at sources/41D120CC8C5AC1ADBAA2CC7E606E4F8710D84044 (HTTP::Server::Tiny) line 88 in block at sources/41D120CC8C5AC1ADBAA2CC7E606E4F8710D84044 (HTTP::Server::Tiny) line 495 in block at gen/moar/m-CORE.setting line 32373 in block at gen/moar/m-CORE.setting line 32344 in method protect at gen/moar/m-CORE.setting line 31483 in block at gen/moar/m-CORE.setting line 32344 in block at gen/moar/m-CORE.setting line 33584 in method emit at gen/moar/m-CORE.setting line 33581 in method emit at gen/moar/m-CORE.setting line 33621 in block at gen/moar/m-CORE.setting line 34168 in method emit-events at gen/moar/m-CORE.setting line 3045 in block at gen/moar/m-CORE.setting line 3033 in block at gen/moar/m-CORE.setting line 3028 in method protect at gen/moar/m-CORE.setting line 31483 in method process at gen/moar/m-CORE.setting line 3025 in block at gen/moar/m-CORE.setting line 34171 in block at gen/moar/m-CORE.setting line 31627 in block at gen/moar/m-CORE.setting line 31624 in block at gen/moar/m-CORE.setting line 31623 in block at gen/moar/m-CORE.setting line 31620