Ошибка OutOfMemoryError

Добрый день. В системе периодически появляются ошибки java.lang.OutOfMemoryError: Java heap space, java.lang.OutOfMemoryError: GC overhead limit exceeded.
image
image
Подскажите, как можно решить эту проблему?

Необходимо выделить больше места для кучи. В собранном проекте в файле bin/setenv.sh или bin/setenv.bat есть следующая строка CATALINA_OPTS="-Xmx512m -Dfile.encoding=UTF-8". Необходимо увеличить значение для -Xmx.
Например: CATALINA_OPTS="-Xms256m -Xmx1024m -Dfile.encoding=UTF-8".
Xms - указывает начальное распределение памяти, Xmx - максимальное

Может быть есть возможность настраивать эти переменные напрямую из CUBA, это было бы неплохо

Источников проблемы может быть два:

  • приложению недостаточно памяти для выполнения бизнес-функций
  • в приложении есть утечка памяти

В первом случае - достаточно увеличить Xmx (в Tomcat настройки по умолчанию рассчитаны на разработку, а не на эксплуатацию). Во втором - сделать Heap Dump (Из jconsole / VisualVM) и посмотреть на проблему в Eclipse MAT.

Подскажите, пожалуйста, как увеличеть Xmx не в сборке, а в дебаги. Что бы проект запускался не с 500мБ ?

1 симпатия