Утечка ссылки на среду выполнения jruby, получение ошибок PermGen OOM после перезагрузки приложения

Что-то в моем коде или в используемых мной драгоценных камнях вызывает утечку ссылки на среду выполнения JRuby: каждый раз, когда я перезагружаю приложение в Torquebox, Trinidad или что-то еще, permgen просто заполняется до тех пор, пока в итоге не получится слишком много перезагрузок. Ошибка OOM PermGen.

Как мне узнать, что вызывает это? Какие вещи я ищу? Я использую JRuby 1.7.3, поэтому не должно быть проблем с самой JRuby...

1 ответ

Это, вероятно, самое близкое к Hotspot, которое обеспечивает очистку памяти PermGen:

JAVA_OPTS = "- сервер -XX: + UseConcMarkSweepGC -XX: + CMSClassUnloadingEnabled -XX: + UseCodeCacheFlushing..."

... конечно не поможет, если есть утечка ссылок, сдерживающая классы от GC-d

Другие вопросы по тегам