ФАТАЛЬНАЯ ОШИБКА: Неэффективная отметка-не удалось выполнить распределение кучи вблизи предела кучи — при запуске приложения react в куче JavaScript не хватает памяти

#node.js #reactjs #npm

Вопрос:

FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory

Я использовал npm версии 8.1.1 и node версии 17.0.1. Затем я попытался перейти к версии 7.24.2 для npm и 14.18.1 LTS для node, но все равно получил ту же ошибку.

 
[7432:000001F15002D0F0]   193144 ms: Mark-sweep (reduce) 2037.2 (2051.1) -> 2036.8 (2052.4) MB, 3731.7 / 0.1 ms  (average mu = 0.141, current mu = 0.017) allocation failure scavenge might not succeed
[7432:000001F15002D0F0]   196878 ms: Mark-sweep (reduce) 2038.0 (2054.4) -> 2037.6 (2055.1) MB, 3724.3 / 0.1 ms  (average mu = 0.080, current mu = 0.003) allocation failure scavenge might not succeed


<--- JS stacktrace --->

FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
 1: 00007FF684FE412F napi_wrap 133311
 2: 00007FF684F7DD06 SSL_get_quiet_shutdown 63062
 3: 00007FF684F7EB9D node::OnFatalError 301
 4: 00007FF6858619CE v8::Isolate::ReportExternalAllocationLimitReached 94
 5: 00007FF6858467BD v8::SharedArrayBuffer::Externalize 781
 6: 00007FF6856EFFCC v8::internal::Heap::EphemeronKeyWriteBarrierFromCode 1516
 7: 00007FF6856FB3EA v8::internal::Heap::ProtectUnprotectedMemoryChunks 1258
 8: 00007FF6856F8529 v8::internal::Heap::PageFlagsAreConsistent 2457
 9: 00007FF6856ED0C1 v8::internal::Heap::CollectGarbage 2049
10: 00007FF6856EB2C5 v8::internal::Heap::AllocateExternalBackingStore 1349
11: 00007FF68570B73B v8::internal::Factory::NewFillerObject 203
12: 00007FF685439F81 v8::internal::interpreter::JumpTableTargetOffsets::iterator::operator= 1409
13: 00007FF6858ECDFD v8::internal::SetupIsolateDelegate::SetupHeap 474253
14: 00007FF6858EDCAD v8::internal::SetupIsolateDelegate::SetupHeap 478013
15: 00007FF68593DE89 v8::internal::SetupIsolateDelegate::SetupHeap 806169
16: 00007FF6858DC792 v8::internal::SetupIsolateDelegate::SetupHeap 407074
17: 0000031867B4B9AC ```
 

Комментарии:

1. Вы можете попробовать выполнить эту команду на терминале, на котором вы запускаете свой проект: NODE_OPTIONS="--max-old-space-size=8192"

2. И сообщите здесь, сработало это или нет.

3. @VipulTyagi это не работает. как с npm, так и с пряжей. Даже после того, как я удалю node_modules и запущу установку npm

4. Пожалуйста, не делитесь скриншотами текста. Лучше всего скопировать и вставить выходные данные в сообщение.

5. Это значит, что у тебя заканчивается память. Исправьте, чтобы ваше приложение использовало меньше памяти. Если это, например, приложение CRA, вы можете отключить исходные карты, потому что для их создания требуется много памяти.

Ответ №1:

Решение, которое сработало для меня, — это добавление .env файла в тот же каталог, package.json что и добавление GENERATE_SOURCEMAP=false в .env файл.

смотрите это для справки https://create-react-app.dev/docs/advanced-configuration/