|
|
|
Просмотр Old generation
|
|||
|---|---|---|---|
|
#18+
Можно ли как-то узнать что за объекты лежат в Old Generation? В VisualGC вижу только графики, а хочется узнать что за объекты его переполняют. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2012, 20:07:30 |
|
||
|
Просмотр Old generation
|
|||
|---|---|---|---|
|
#18+
Почему именно Tenured? JDK/bin/jvisualvm - запускаем, подсоединяемся к существующему Java процессу. Делаем дамп кучи, анализируем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2012, 21:08:35 |
|
||
|
Просмотр Old generation
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, При выполнении кода связанного с запалнением БД данными падает: java.lang.OutOfMemoryError: GC overhead limit exceeded При падении получаю Heap Dump, как в нём понять что именно лежит в Old Gen не ясно. Old gen я хочу про анализировать потому что, локализовав участок кода я вижу что при его исполнении начинает быстро заполнятся OldGen(определяю по графика Visual GC). Я так понимаю что анализ heap dump делается через OQL , может покажете как отфильтровать по Old gen. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2012, 04:44:10 |
|
||
|
Просмотр Old generation
|
|||
|---|---|---|---|
|
#18+
GregTkПри выполнении кода связанного с запалнением БД данными падает: java.lang.OutOfMemoryError: GC overhead limit exceeded Куча не переполнилась, просто GC работал слишком долго и не смог освободить достаточно места. GregTkПри падении получаю Heap Dump, как в нём понять что именно лежит в Old Gen не ясно. Old gen я хочу про анализировать потому что, локализовав участок кода я вижу что при его исполнении начинает быстро заполнятся OldGen(определяю по графика Visual GC). Забудьте про Old Gen. Эта фильтрация вам ничего не даст. Скажу даже более. Если у вас это временные данные, то может имеет смысл просто увеличить Young? GregTkЯ так понимаю что анализ heap dump делается через OQL , может покажете как отфильтровать по Old gen. Ненужно ничего фильтровать. Запускаете, открываете дамп и анализируете содержимое памяти http://visualvm.java.net/heapdump.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2012, 10:14:26 |
|
||
|
Просмотр Old generation
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, понятно, но мне не ясно как из например 2 млн. String понять какие именно относятся к моему приложению, грубо говоря если начинать просмотр их содержимого, то вижу вещи вообще не связанные. А можно Instances с группировать по их refernces? Я такого просто в VisualVM не нашел... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2012, 10:23:32 |
|
||
|
Просмотр Old generation
|
|||
|---|---|---|---|
|
#18+
GregTkпонятно, но мне не ясно как из например 2 млн. String понять какие именно относятся к моему приложению, грубо говоря если начинать просмотр их содержимого, то вижу вещи вообще не связанные. А можно Instances с группировать по их refernces? Я такого просто в VisualVM не нашел... VisualVM достаточно простой профайлер, возможно нужные вам фичи есть в YourKit или JProfiler. Но мне хватает VisualVM с головой. Сортируете строки по размеру. Находите несколько тех типичных, из-за которых произходит утечка. Находите их GC Root. Анализируете этот пусть и смотрите какой общий объект держит ссылки. Можно ещё попробовать Memory Profiler. Он покажет прирост каких объектов произошел на некоторое время. И там вместо String увидите свои сущности, и проанализируете. Можно отфильтровать по package и смотреть только свои классы, например. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2012, 10:45:22 |
|
||
|
Просмотр Old generation
|
|||
|---|---|---|---|
|
#18+
Если хотите, можете выложить дамп, я посмотрю может что подозрительное увижу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2012, 10:45:57 |
|
||
|
Просмотр Old generation
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Спасибо за наводку, буду сам пытаться. И по возможности задавать тут вопросы, уже 2 ночи убил на поиски утечки памяти, вот сейчас жду heap dump когда выплюнет и буду разбирать его. Одно радует пока искал проблему много узкие места в коде поправил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2012, 10:50:25 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=37971965&tid=2130895]: |
0ms |
get settings: |
14ms |
get forum list: |
23ms |
check forum access: |
7ms |
check topic access: |
7ms |
track hit: |
59ms |
get topic data: |
14ms |
get forum data: |
4ms |
get page messages: |
91ms |
get tp. blocked users: |
3ms |
| others: | 288ms |
| total: | 510ms |

| 0 / 0 |
