我有一个管理门户,其中配置和操作了数据库中的所有文档。
我们有一个语言翻译集合,其中包含大量文档。
管理员可以修改所有这些文件。
如果管理员打开任何其他集合,它可以正常工作。但是当他打开这个语言翻译集时,系统会变慢,几分钟后我就发现了这个错误。
<--- Last few GCs ---> 513530251 ms: Mark-sweep 1397.7 (1458.0) -> 1397.7 (1458.0) MB, 2719.4 / 2 ms [allocation failure] [ GC in old space requested]. 513533054 ms: Mark-sweep 1397.7 (1458.0) -> 1397.7 (1458.0) MB, 2802.9 / 2 ms [last resort gc]. 513535773 ms: Mark-sweep 1397.7 (1458.0) -> 1397.6 (1458.0) MB, 2718.9 / 2 ms [last resort gc]. <--- JS stacktrace ---> ==== JS stack trace ========================================= Security context: 000002D0BF1B4639 <JS Object> 1: new constructor(aka WritableState) [_stream_writable.js:88] [pc=0000036F0D0CA7F9] (this=00000 153740AD191 <a WritableState with map 0000017D64825C01>,options=00000065E299D0F1 ,stream=00000153740ACFA1 ) 3: Writable [_stream_writable.js:143] [pc=0000036F0D0CA0C2] (this=00000153740ACFA1 <a Socket with map 0000017D... FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - process out of memory
任何人都可以帮我解决这个问题吗?
我使用以下语法启动节点。
set node_debug=foo&& node --max-old-space-size=8192 server.js
答案 0 :(得分:0)
我通过Homebrew安装Node时遇到了同样的问题。
尝试运行vim `which npm`
并改变:
#!/usr/bin/env node
至:
#!/usr/bin/env node --max-old-space-size=2048
更新:顺便说一句,我已按照这些simple steps
修复了此错误答案 1 :(得分:0)
添加环境变量:
TOOL_NODE_FLAGS="--max-old-space-size=4096"