При вызове функции getHeapStatistics модуля v8 свойство heap_size_limit неверно для размеров памяти, установленных более 4 ГБ. В частности, если вы устанавливаете max_old_space> = 4032, heap_size_limit неверен. Воспроизвести:
узел --max_old_space_size = 3072
требовать ('v8'). getHeapStatistics (). heap_size_limit
3288334336
Это как и следовало ожидать, но посмотрите, что делает 4096:
узел --max_old_space_size = 4096
требовать ('v8'). getHeapStatistics (). heap_size_limit
67108864
64 Мб ???? Это не правильно. После некоторых проб и ошибок магическая точка перелома - 4032:
узел --max_old_space_size = 4032
требовать ('v8'). getHeapStatistics (). heap_size_limit
0
Размер кучи равен ZERO, если установлен на 4092.
Это также происходит в Mac OS X 10.11.6 и Node v5.11.0.
Самый полезный комментарий
https://github.com/nodejs/node/pull/10186