ノードのバージョンは v0.11.13
sudo topレイズオーバーによらないクラッシュ時のメモリ使用量3%
このエラーを再現するコード:
var request = require('request')
var nodedump = require('nodedump')
request.get("http://pubapi.cryptsy.com/api.php?method=marketdatav2",function(err,res)
{
var data
console.log( "Data received." );
data = JSON.parse(res.body)
console.log( "Data parsed." );
data = nodedump.dump(data)
console.log( "Data dumped." );
console.log( data )
})
再帰スタックサイズの問題であるかどうかを確認するには、次のコードを--stack-size = 60000パラメーターで実行しました
var depth = 0;
(function recurse() {
// log at every 500 calls
(++depth % 500) || console.log(depth);
recurse();
})();
そして持っている
264500
Segmentation fault
次に、致命的なエラーが発生するコードを実行しました:CALL_AND_RETRY_LAST割り当てに失敗しました-同じ--stack-size = 60000パラメータを使用してメモリ不足のプロセスを実行しましたが、取得できませんでしたSegmentation fault。
だから私CALL_AND_RETRY_LASTは再帰スタックサイズと共通することは何もないと結論付けます。
どうすればこの問題を解決できますか?このタスクを正常に完了するには、コンピューターに十分な空きメモリがあると思います。
stackoverflowにも同様の質問がありますが、この質問のどれもがそうではないCALL_AND_RETRY_LASTので、別の質問を作成しました。