1、
=ERROR REPORT==== 9-Jul-2013::12:26:19 ===
trends_riak_query::find 37 Error={error,
<<"{\"phase\":0,\"error\":\"[worker_limit_reached]\",\"input\":\"{<<\\\"collections\\\">>,<<\\\"1372612349298430\\\">>}\",\"type\":\"result\",\"stack\":\"[]\"}">>}
=INFO REPORT==== 9-Jul-2013::12:26:19 ===
end{<0.24396.0>}
2、调整 worker_limit 参数有额外出现了 下面错误{riak_pipe, [{worker_limit, 100000}]},
因为测试过程gc同学修改过数据源(把CB的78改成80),所以现在不能确定
=ERROR REPORT==== 9-Jul-2013::12:26:19 ===
trends_riak_query::find 37 Error={error,<<"Error receiving outputs: normal">>}
=INFO REPORT==== 9-Jul-2013::12:26:19 ===
end{<0.24420.0>}
3、200进程X2没出现worker_limit错误,只是提示数据库连接池耗尽,CPU使用68%左右
单台服务器
测试代码
F = fun()-> trends_riak_query:find(collection,[]), trends_riak_query:find(collection,[]),error_logger:info_msg("end~p~n",[{self()}]) end,
[begin spawn(F),io:format("~p~n",[K]) end||K<-lists:seq(1,200)].
%%
修改配置文件
{riak_pipe, [{worker_limit, 100000},
{worker_queue_limit, 4096000}]},