首页 > 解决方案 > GC 和 JS Stacktrace 致命错误:接近堆限制的无效标记压缩分配失败 - Next.js 应用程序的 JavaScript 堆内存不足

问题描述

我有一个 Next.js 应用程序,它可以在没有引导程序的情况下正常工作,但是一旦我添加和使用 react-bootstrap 并创建一些组件,我的应用程序就会崩溃。我的错误信息:


[3239:0x1046c2000]   139418 ms: Mark-sweep (reduce) 4095.3 (4101.6) -> 4094.6 (4102.9) MB, 3784.9 / 0.0 ms  (average mu = 0.124, current mu = 0.001) allocation failure scavenge might not succeed
[3239:0x1046c2000]   144747 ms: Mark-sweep (reduce) 4095.7 (4101.9) -> 4095.0 (4103.1) MB, 5319.8 / 0.0 ms  (+ 0.0 ms in 17 steps since start of marking, biggest step 0.0 ms, walltime since start of marking 5329 ms) (average mu = 0.056, current mu = 0.002

<--- JS stacktrace --->

FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
 1: 0x1012e4da5 node::Abort() (.cold.1) [/usr/local/bin/node]
 2: 0x1000a6239 node::Abort() [/usr/local/bin/node]
 3: 0x1000a639f node::OnFatalError(char const*, char const*) [/usr/local/bin/node]
 4: 0x1001e9007 v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [/usr/local/bin/node]
 5: 0x1001e8fa3 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [/usr/local/bin/node]
 6: 0x100397e95 v8::internal::Heap::FatalProcessOutOfMemory(char const*) [/usr/local/bin/node]
 7: 0x10039995a v8::internal::Heap::RecomputeLimits(v8::internal::GarbageCollector) [/usr/local/bin/node]
 8: 0x100395029 v8::internal::Heap::PerformGarbageCollection(v8::internal::GarbageCollector, v8::GCCallbackFlags) [/usr/local/bin/node]
 9: 0x1003928c1 v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [/usr/local/bin/node]
10: 0x1003a115a v8::internal::Heap::AllocateRawWithLightRetrySlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [/usr/local/bin/node]
11: 0x1003a11e1 v8::internal::Heap::AllocateRawWithRetryOrFailSlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [/usr/local/bin/node]
12: 0x10036eb87 v8::internal::Factory::NewFillerObject(int, bool, v8::internal::AllocationType, v8::internal::AllocationOrigin) [/usr/local/bin/node]
13: 0x1006edd40 v8::internal::Runtime_AllocateInOldGeneration(int, unsigned long*, v8::internal::Isolate*) [/usr/local/bin/node]
14: 0x100a7a239 Builtins_CEntry_Return1_DontSaveFPRegs_ArgvOnStack_NoBuiltinExit [/usr/local/bin/node]
error Command failed with signal "SIGABRT".

这只发生在我创建 react-bootstrap 组件时。其他一切似乎都工作正常......我认为 react-bootstrap 应该与 Next 一起工作......但似乎没有一个 bootstrap 版本与 Next 一起工作。任何有助于理解我在这里发生的事情将不胜感激。

标签: node.jsreactjstypescriptgarbage-collectionnext.js

解决方案


推荐阅读