【发布时间】:2018-11-30 12:22:11
【问题描述】:
一段时间以来,我们一直在 circleci 上运行我们的构建。最近(有时)它们在运行ng build 时因为分配失败而失败。
我们使用的具体构建命令是
ng build --prod --sourcemaps --aot true --build-optimizer --env=stage
这是输出日志。
70% building modules 1562/1562 modules 0 active
79% module and chunk tree optimization
80% chunk modules optimization
81% advanced chunk modules optimization
82% module reviving
83% module order optimization
84% module id optimization
85% chunk reviving
86% chunk order optimization
87% chunk id optimization
88% hashing
89% module assets processing
90% chunk assets processing
91% additional chunk assets processing
92% recording 91% additional asset processing
92% chunk asset optimization
<--- Last few GCs --->
121548 ms: Scavenge 1327.9 (1434.3) -> 1327.8 (1434.3) MB, 21.8 / 0 ms (+ 1.6 ms in 9 steps since last GC) [allocation failure].
121572 ms: Scavenge 1327.9 (1434.3) -> 1327.9 (1434.3) MB, 22.7 / 0 ms (+ 0.3 ms in 1 steps since last GC) [allocation failure].
121595 ms: Scavenge 1327.9 (1434.3) -> 1327.9 (1434.3) MB, 22.9 / 0 ms [allocation failure].
121617 ms: Scavenge 1327.9 (1434.3) -> 1327.9 (1434.3) MB, 22.0 / 0 ms [allocation failure].
<--- JS stacktrace --->
Cannot get stack trace in GC.
FATAL ERROR: Scavenger: semi-space copy
Allocation failed - process out of memory
Aborted (core dumped)
Exited with code 134
当使用top 过滤到node 的Pid 在本地运行时,它会达到大约1.4GB 的内存使用量,没有源映射它会达到大约800mb。
CircleCI 允许 4gb(据我所知)内存,我不明白为什么我会(随机)收到此错误。
非常感谢任何想法。
【问题讨论】:
-
请分享你的 package.json
-
只是为了确定,尝试将您的资源类增加到中+,看看会发生什么。我觉得不是这个,不过你试试也不会亏本,它会给你提示circleci.com/docs/2.0/configuration-reference/#resource_class
标签: node.js angular memory circleci circleci-2.0