recursecenter / webstack.jl

DEPRECATED: In progress Julia webstack
82 stars 5 forks source link

High volume of requests routed through Micro breaks `@async` #27

Closed despeset closed 11 years ago

despeset commented 11 years ago

In terminal A: julia example-micro.jl In terminal B: ab -n 100 http://127.0.0.1:8000/admin/new Results vary from:

ERROR: type: on_message_complete: in apply, expected Function, got (Array{Uint8,1},DataType)
 in on_message_complete at /Users/daniel/dev/2013/webstack.jl/RequestParser.jl:111
 in http_parser_execute at /Users/daniel/dev/2013/webstack.jl/HttpParser/src/HttpParser.jl:102
 in anonymous at /Users/daniel/dev/2013/webstack.jl/Http.jl:155
 in notify_filled at stream.jl:192
 in _uv_hook_readcb at stream.jl:214
 in event_loop at multi.jl:1386
 in anonymous at client.jl:284

to

ERROR: type: on_message_complete: in apply, expected Function, got StateUpdate
 in on_message_complete at /Users/daniel/dev/2013/webstack.jl/RequestParser.jl:111
 in http_parser_execute at /Users/daniel/dev/2013/webstack.jl/HttpParser/src/HttpParser.jl:102
 in anonymous at /Users/daniel/dev/2013/webstack.jl/Http.jl:155
 in notify_filled at stream.jl:192
 in _uv_hook_readcb at stream.jl:214
 in event_loop at multi.jl:1386
 in anonymous at client.jl:284

to

ERROR: [1]    86812 segmentation fault  julia example-micro.jl

to ...

If you uncomment the @async block in Http.jl:171 this goes away. This seems like an issue with Julia? This does not occur when tested with example-http.jl – maybe something in Micro is causing an issue in the stack?

CC: @StefanKarpinski

despeset commented 11 years ago

After this causes the above errors during the first run of ab, then subsequent runs of the ab command will actually work flawlessly without generating any issues.

despeset commented 11 years ago

This appears to have been fixed upstream.