В моем журнале gc есть много объектов, выделенных старым поколениям (журналы ALLOC(Old)), текущий порог 15, возраст моих объектов всего 1, т.е. эти объекты не будут повышены до старых поколений, я думаю, есть какое-либо условие, при котором объекты будут распределяться по старым поколениям непосредственно в G1 GC? Заранее спасибо!
Выдержка из журнала GC:
grep "ALLOC(Old)" gc.log | wc -l
387
grep "thres" gc.log
Desired survivor size 1207959552 bytes, new threshold 15 (max 15)
Desired survivor size 1207959552 bytes, new threshold 15 (max 15)
- age 1: 37707272 bytes, 37707272 total
Версия JDK:
openjdk версия "1.8.0_222"
Среда выполнения OpenJDK (сборка 1.8.0_222-b10)
64-разрядная виртуальная машина сервера OpenJDK (сборка 25.222-b10, смешанный режим)
*********Обновление от 31.01.2020******************
Это не огромные объекты, журнал gc покажет распределение огромных объектов другим способом, пожалуйста, обратитесь к следующей выдержке из журнала gc, спасибо!
>> grep "StartsH" gc.log | wc -l
51
>> grep "ContinuesH" gc.log | wc -l
324
>> grep "ALLOC(Old)" gc.log | wc -l
528
Ссылка: https://www.redhat.com/en/blog/collecting-and-reading-g1-garbage-collector-logs-part-2