powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / java падает во время Full GC без сообщений в логах. Как исправить проблему?
3 сообщений из 3, страница 1 из 1
java падает во время Full GC без сообщений в логах. Как исправить проблему?
    #38129820
Vetal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет!

Такая вот мистика...

Сайт периодически (раз в несколько дней) молча падает во время Full GC. Никаких сообщений в логах. Процесс также умирает и отсутствует в списке активных процессов.
В catalina.out - пусто.
В gc.log последние сообщения:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
356246.479: [GC [PSYoungGen: 248391K->30842K(271232K)] 2253735K->2065016K(2350464K), 0.0425980 secs] [Times: user=0.17 sys=0.00, real=0.04 secs] 
356260.295: [GC [PSYoungGen: 268966K->7690K(315904K)] 2303141K->2071585K(2395136K), 0.0396510 secs] [Times: user=0.14 sys=0.01, real=0.04 secs] 
356260.335: [Full GC [PSYoungGen: 7690K->0K(315904K)] [ParOldGen: 2063895K->1844096K(2077568K)] 2071585K->1844096K(2393472K) [PSPermGen: 65391K->65391K(66176K)], 3.9304900 secs] [Times: user=15.07 sys=0.00, real=3.93 secs] 
356268.131: [GC [PSYoungGen: 273728K->44215K(318912K)] 2117824K->1888312K(2396480K), 0.0687520 secs] [Times: user=0.24 sys=0.01, real=0.07 secs] 
356286.185: [GC [PSYoungGen: 317943K->16695K(339904K)] 2162040K->1860792K(2417472K), 0.0296620 secs] [Times: user=0.10 
// Много вызовов PSYoungGen GC
362994.882: [GC [PSYoungGen: 855487K->75451K(854272K)] 2892841K->2117702K(2931840K), 0.0663440 secs] [Times: user=0.19 sys=0.00, real=0.10 secs] 
363182.773: [GC-- [PSYoungGen: 854267K->854267K(854272K)] 2896518K->2931832K(2931840K), 0.2624890 secs] [Times: user=0.41 sys=0.00, real=0.29 secs] 
363183.065: [Full GC [PSYoungGen: 854267K->0K(854272K)] [ParOldGen: 2077565K->1862059K(2077568K)] 2931832K->1862059K(2931840K) [PSPermGen: 66021K->65927K(66176K)], 5.0519310 secs]
Так вот, в крайнем Full GC отсутствует запись вида [Times: user=15.07 sys=0.00, real=3.93 secs], которая присутствует во всех предыдущих вызовах Full GC.

Таким образом, можно сделать вывод, что в процессе Full GC (судя по-всему, практически по окончанию его), происходит падение jdk.

К сожалению, fatal error log не создается. Конфигурации вида -XX:ErrorFile в настройках джава-машины нет, запрос на поиск sudo find / -name hs_err_pid* никаких файлов не выдает.

Таким образом, не вижу никакой возможности понять причину проблемы.

Параметры конфигурации
JDK 1.7.0_10, tomcat 7.0.30, OS: Ubuntu 12.10

(JDK 1.7.0_11 содержит только секьюрити фиксы, без фиксов работы GC)

Параметры старта джава-машины (catalina.sh томкета):
CATALINA_OPTS="-Xmx3g -XX:+HeapDumpOnOutOfMemoryError"
JAVA_OPTS="-verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -Xloggc:/usr/share/tomcat-site/logs/gc.log"


Помогите разобраться, пожалуйста, как исправить данную проблему??
...
Рейтинг: 0 / 0
java падает во время Full GC без сообщений в логах. Как исправить проблему?
    #38129868
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PermGen подозрительно заполнен. Он не течет? Увеличить не пробовали?
Да и вообще вся куча заполнена, что тоже не способствует. Возможно OOME выкидыватеся, а потом JVM крашится, потому что не может дамп кучи создать.
Попробуйте ещё настроить % наполнения кучи, чтобы OOME выкидывался раньше, пока в куче ещё осталось немного места.
...
Рейтинг: 0 / 0
java падает во время Full GC без сообщений в логах. Как исправить проблему?
    #38129890
Vetal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz, спасибо за традиционно мудрые ответы!

BlazkowiczPermGen подозрительно заполнен. Он не течет? Увеличить не пробовали?
О, действительно! Как я не заметил?!
Я тогда увеличу PermGen до 256 метров, и укажу ключи:
-XX:+CMSPermGenSweepingEnabled -XX:+CMSClassUnloadingEnabled

BlazkowiczДа и вообще вся куча заполнена, что тоже не способствует. Возможно OOME выкидыватеся, а потом JVM крашится, потому что не может дамп кучи создать.
А почему это куча заполнена?
автор2931832K->1862059K(2931840K)
Вроде как больше гигабайта остается свободных... Или я что не так понял?

BlazkowiczПопробуйте ещё настроить % наполнения кучи, чтобы OOME выкидывался раньше, пока в куче ещё осталось немного места.
Вы имеете в виду -XX:MinHeapFreeRatio и -XX:MaxHeapFreeRatio? Или какие параметры? И во сколько их посоветуете установить?
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / java падает во время Full GC без сообщений в логах. Как исправить проблему?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]