[erlang-bugs] More HiPE issues with binaries
Loïc Hoguin
essen@REDACTED
Sat Mar 2 21:17:35 CET 2013
Hello,
Cowboy doesn't work when compiled with HiPE. When using curl on a simple
hello world example, it sometimes work as expected, sometimes return a
408 timeout error. When using http_load
(http://acme.com/software/http_load/) on the same example, it sometimes
work and sometimes throws a weird function_clause error.
=ERROR REPORT==== 2-Mar-2013::21:13:54 ===
Error in process <0.26124.0> with exit value:
{function_clause,[{cowboy_protocol,parse_hd_name,9,[]},{lists,zip,2,[]}]}
As you can guess, lists:zip/2 doesn't call
cowboy_protocol:parse_hd_name/9. Someone else reported a similar issue
with the stacktrace in another project on IRC.
Same result with R15B03 and R16B.
Here are the steps to reproduce. Sorry it's not the smallest download, I
can't isolate:
git clone git://github.com/extend/cowboy.git
cd cowboy/examples/hello_world
rebar get-deps compile
cd deps/cowboy
ERLC_OPTS=+native make clean app
cd -
./start.sh
Then with curl:
curl -i http://localhost:8080
It will intermittently return 200 or 408.
With http_load:
echo "http://localhost:8080" > urls.txt
http_load -parallel 500 -seconds 10 urls.txt
It will print a lot of these weird errors:
=ERROR REPORT==== 2-Mar-2013::21:13:54 ===
Error in process <0.26098.0> with exit value:
{function_clause,[{cowboy_protocol,parse_hd_name,9,[]},{lists,zip,2,[]}]}
Tell me how I can help get this fixed.
--
Loïc Hoguin
Erlang Cowboy
Nine Nines
http://ninenines.eu
More information about the erlang-bugs
mailing list