Исчерпан Metaspace (OutOfMemoryError: Metaspace)
- Платформы
- Paper · Purpur · один сервер
- Проверено
- Проверено
- Уверенность
- Уверенность 90%
Как это выглядит в логе
Достаточно одной из строк. Агент сверяет их с логом локально, на вашем сервере.
logs/latest.log
[WARN] java.lang.OutOfMemoryError:
Симптомы
- После /reload или перезагрузки плагинов через PlugMan сервер падает или плагины не включаются
- В логе: «java.lang.OutOfMemoryError: Metaspace» или «Compressed class space»
Причина
Закончилась память для метаданных классов. Обычно из-за утечки загрузчиков классов при /reload или перезагрузке плагинов «на лету», реже из-за слишком низкого -XX:MaxMetaspaceSize.
Вероятные причины
- Многократные /reload или PlugMan reload: старые загрузчики классов плагинов не освобождаются
- Задан слишком маленький -XX:MaxMetaspaceSize / CompressedClassSpaceSize
- Плагин генерирует классы во время работы (скрипты, прокси) и не освобождает их
Как исправитьНизкий риск
- Полностью перезапустите сервер (не
/reload). - Перестаньте использовать
/reloadи перезагрузку плагинов через PlugMan — обновляйте плагины только с остановкой сервера. - Проверьте флаги JVM: если задан
-XX:MaxMetaspaceSize— увеличьте его или уберите ограничение. - Если OOM повторяется без перезагрузок — найдите плагин, генерирующий классы (
/spark heapsummary, рост числа загруженных классов).