Здравствуйте, Partisan, Вы писали:
P>Здравствуйте, AVM, Вы писали:
AVM>>Здравствуйте, inopressa, Вы писали:
I>>>работаю с Томкатом из под Идеи. Проект на JSF. Регулярно (после нескольких деплоев) вываливается с OutOfMemoryException. PemGemSpace error.
I>>>Памяти добавил, вываливаться стало чуть реже. Куда копать?
AVM>>PemGemSpace — специальная область памяти отвечающая за хранение классов. Когда ты делаешь undeploy, некоторые классы твоего приложения могут не выгружаться class loader-ом. Смотри профайлером, какие именно классы не выгружаются. Например, такая проблема может возникать при использовании commons-logging.
AVM>>Как вариант решения проблемы, использовать class loader сервера вместо class loader-а приложения. Подробности смотри в доке на Томкэт.
P>Объяснение неправильное. Да и вопрос тоже. На фига использовать IDEA, непонятно. Хотя проблема не имеет отношения к IDEA.
P>В общем, не хватает размера области памяти PermGen. Решение:
P>- увеличить его. Поиском в google по слову PermGen можно найти рецепты, в частности подходящий:
P>настройка PermGen
P>Что такое PermGen — см. в документации по JVM.
P>Посмотреть, сколько памяти сейчас используется в PermGen, можно программой jconsole и др.
P>- использовать JVM, в которой нету PermGen, а именно Oracle JRockit (ранее BEA JRockit).
Увеличение размера perm gen просто отстрочит вылет с out of memory, но не решит проблему. Надо внимательно смотреть какие классы не выгружаются после undeploy приложения.