Minecraft-сервер рассчитывает мир тиками, 20 раз в секунду. Если тик длится слишком долго или заканчивается оперативная память, сервер пишет предупреждения в лог или в худшем случае аварийно завершает работу. Каждый раздел ниже объясняет одно из таких сообщений: как его узнать, насколько оно серьёзно и что ты можешь сделать. Сначала идут сообщения, после которых сервер падает или останавливается, затем предупреждения, при которых он продолжает работать.
Полное сообщение ты найдёшь в Консоль или в разделе Файлы в logs/latest.log, отчёты о сбоях лежат в папке crash-reports/. Всегда читай и строки перед ним: там часто видно, что затормозило сервер. Перед изменением файлов конфигурации или мира создай резервную копию в разделе Резервные копии.
«A single server tick took … seconds»: Watchdog завершает работу сервера
Так выглядит сообщение:
The server has not responded for <Seconds> seconds! Creating thread dump
A single server tick took 60.00 seconds (should be max 0.05)
В чём причина: Watchdog следит за тем, что сервер продолжает работать. Если тик, то есть один рабочий шаг игровой симуляции, длится слишком долго, он завершает зависший сервер, и игра прерывается. Перед этим Paper записывает промежуточные сообщения с дампом потоков, то есть снимком текущей работы: если сервер вовремя восстанавливается, он продолжает работать. Частые причины: нехватка памяти или тяжёлый плагин либо мод.
Как это исправить:
- В разделе Файлы открой
logs/latest.logи прочитай строки перед первым сообщением Watchdog. Проверь более ранние ошибки; если там естьStopping server, выясни также, на чём завис процесс выключения. - В дампе потоков посмотри на самые верхние строки под
Server thread. Название плагина или мода покажет, чем сервер был занят в последний момент. - Проверь оперативную память.
OutOfMemoryError: Java heap spaceозначает, что память Java исчерпана; в таком случае проверь также, чем она занята. - Останови сервер перед изменением файлов. Обнови затронутый плагин в разделе Плагины или мод в разделе Моды либо удали его для проверки, перезапусти сервер и проверь снова.
Подробнее: Как правильно устранить «Can't keep up» и тайм-аут Watchdog
«Java heap space»: оперативная память сервера исчерпана
Так выглядит сообщение:
An unexpected error while handling a WorldEdit command … java.lang.OutOfMemoryError: Java heap space
[LuckPerms] Thread <Thread> threw an uncaught exception … java.lang.OutOfMemoryError: Java heap space
failed to handle chunk data (write) … java.lang.OutOfMemoryError: Java heap space
В чём причина: Java управляет оперативной памятью сервера в области под названием Heap, которая при текущей нагрузке переполнилась. Крупные действия WorldEdit, множество загруженных чанков (то есть участков мира), большие модпаки или плагины с большим объёмом данных могут требовать много памяти. Сервер часто падает или работает нестабильно; также может не получиться сохранить данные мира или сущностей, например существ и предметов. Указанный поток или плагин показывает, где не хватило памяти, но не обязательно является самым большим потребителем памяти.
Как это исправить:
- Перезапусти сервер, чтобы завершить переполненный процесс. Если нагрузка не изменится, ошибка может появиться снова.
- Определи потребность в памяти: Планирование объёма RAM для Minecraft. Если твоего тарифа не хватает, выбери больше RAM в разделе Настройки и подписка → Тариф.
- Разбивай крупные действия WorldEdit на части и при необходимости уменьши
view-distanceв файлеserver.propertiesв разделе Файлы. - После перезапуска проверь Консоль и затронутые участки мира. При сообщениях о
chunk data (write)особенно внимательно проверь, сохранилось ли последнее состояние.
Полезно знать: Резервная копия перед следующим крупным изменением мира поможет восстановить потерянные изменения.
«This crash report has been saved to …»: сервер аварийно завершил работу
Так выглядит сообщение:
This crash report has been saved to: crash-reports/crash-<Date>_<Time of day>-server.txt
В чём причина: Сервер был остановлен из-за критической ошибки и записал отчёт о сбое. Само сообщение лишь указывает, где лежит этот отчёт. Настоящая причина, например мод, плагин, мир или нехватка оперативной памяти, указана в файле.
Как это исправить:
- Открой в разделе Файлы папку
crash-reports/, а в ней указанный файл. В его названии есть дата и время сбоя. - Прочитай первый раздел: после
Description:стоит краткое описание, ниже идут строка с ошибкой и стек вызовов (stacktrace), то есть список участков программы, которые привели к ошибке. - Проверь, подходят ли по версии моды или плагины, названные в ошибке. Обнови нужный элемент в разделе Моды или Плагины либо для проверки удали его, предварительно сделав резервную копию.
- При
OutOfMemoryErrorпрочитай дополнение к сообщению. Если там указаноJava heap space, память Java заполнена; если забронировано слишком мало ОЗУ, выбери больше ОЗУ в разделе Настройки и подписка → Тариф. - Запусти сервер и следи за Консоль, пока он полностью не запустится.
Полезно знать: Сохрани отчёт для поиска ошибки и сравни дату и время с текущим сбоем. Для серверов с модами: Ошибки модов на серверах Forge, NeoForge и Fabric
Ошибка в главном игровом цикле
Как выглядит сообщение:
Exception in server tick loop
Caused by: java.lang.<ErrorType>: <Details>
Что за этим стоит: Главный цикл тик за тиком рассчитывает мир. Исключение (exception), то есть программная ошибка, дошло до этого цикла и нарушило его работу. После этого сервер обычно падает и записывает отчёт о сбое. Настоящая причина почти всегда указана в следующей сразу за этим строке Caused by.
Как это исправить:
- Найди сообщение в
logs/latest.logили в самом свежем отчёте вcrash-reports/. - Прочитай строку
Caused byсразу под ним. Если их несколько, самая нижняя обычно ведёт к корню проблемы. - Строки с
at …ниже содержат названия пакетов и файлов. По ним ты определишь, какой плагин или мод замешан. - Обнови или удали его в разделе Плагины либо Моды и перезапусти сервер.
Полезно знать: Это сообщение — не проблема лагов, а конкретная ошибка. Больше оперативной памяти поможет только в том случае, если в строке Caused by указан OutOfMemoryError.
Подробнее: Как правильно устранить «Can't keep up» и таймаут Watchdog
Оперативная память на пределе: GC overhead limit exceeded
Как выглядит сообщение:
java.lang.OutOfMemoryError: GC overhead limit exceeded
Что за этим стоит: Java автоматически освобождает память, которая больше не нужна. Это называется сборкой мусора (Garbage Collection, сокращённо GC). Это сообщение означает: Java тратит почти всё время на уборку, а освободить удаётся совсем немного памяти. Heap, то есть оперативная память Java, практически заполнена. Сервер почти не отвечает или падает.
Как это исправить:
- Перезапусти сервер.
- Выясни, сколько оперативной памяти нужно твоей конфигурации. Подробнее: Как рассчитать потребность Minecraft в оперативной памяти
- Если твоего тарифа не хватает, выбери больше ОЗУ в разделе Настройки и подписка → Тариф.
- Уменьши нагрузку от чанков и сущностей: снизь дальность прорисовки
view-distanceвserver.properties, сократи большие фермы животных и убери валяющиеся предметы.
Полезно знать: Перезапуск лишь даёт небольшую передышку. Если потребление после каждого перезапуска стабильно растёт до предела при той же нагрузке, память может удерживать и плагин или мод.
Нельзя создать новый поток: unable to create native thread
Как выглядит сообщение:
java.lang.OutOfMemoryError: unable to create native thread
Что за этим стоит: Поток — это параллельная линия выполнения. Java хотела запустить ещё один и не смогла. Несмотря на OutOfMemoryError в названии, это не доказательство того, что heap Java переполнен. Чаще всего одновременно запущено слишком много потоков, достигнут предел процессов или не хватает памяти вне heap. Тогда сервер не может запускать новые задачи и становится нестабильным. Какой плагин или мод создаёт потоки, эта строка не показывает.
Как это исправить:
- Не стоит сразу покупать больше ОЗУ. Больше оперативной памяти для Java не решает эту проблему автоматически.
- Прочитай в
logs/latest.logстроки перед сообщением: что происходило в момент ошибки, какие плагины давали о себе знать чаще всего? - Подтверди виновника во время работы. С помощью
spark profiler start --thread *в Консоль ты увидишь все работающие потоки. Их названия часто указывают на плагин или мод. - Только когда виновник подтверждён, обнови его в разделе Плагины либо Моды, проверь его настройки или удали.
Если не получается разобраться, открой тикет и укажи время сообщения. О spark: spark: как найти и понять причину лагов
«Can't keep up»: сервер не успевает обрабатывать тики
Так выглядит сообщение:
Can't keep up! Is the server overloaded? Running 2014ms or 40 ticks behind
В чём причина: Minecraft обычно обрабатывает 20 тиков в секунду, то есть на один тик отводится 50 миллисекунд. Если эти рабочие шаги занимают слишком много времени, накапливается отставание, которое сообщение указывает в миллисекундах и тиках. Сервер продолжает работать, но заметно медленнее: сломанные блоки появляются снова, мобы дёргаются. Причина обычно в нехватке памяти или нагрузке на процессор; отдельные сообщения могут появляться при запуске или при генерации новых территорий.
Как это исправить:
- Проверь, доступен ли spark. Он входит в актуальные версии Paper; на других поддерживаемых серверах установи подходящую версию в виде плагина или мода.
- Во время лагов измерь показатели командой
spark tpsв Консоль. MSPT означает миллисекунды на тик: если длительность тика постоянно превышает отведённое время, частота тиков падает. - Найди виновника командой
spark profiler start --timeout 120и открой ссылку, которая будет выведена после этого. - При остановленном сервере уменьши дальность прорисовки
view-distanceи дальность симуляцииsimulation-distanceвserver.properties. Упрости большие фермы или заранее сгенерируй мир. - Проверь, хватает ли оперативной памяти, и перезапусти сервер после изменения конфигурации.
Подробнее: Как правильно устранить «Can't keep up» и тайм-аут Watchdog
«DO NOT REPORT THIS TO PAPER»: диагностика при зависании сервера
Так выглядит сообщение:
--- DO NOT REPORT THIS TO PAPER - THIS IS NOT A BUG OR A CRASH ---
Server thread dump (Look for plugins here before reporting to Paper!):
В чём причина: Если серверный поток зависает на несколько секунд, Paper записывает диагностику с дампом потоков, то есть снимком того, над чем сервер работает в данный момент. Игра в это время подтормаживает; после зависания сервер может продолжить работу. Если блокировка длится слишком долго, Watchdog завершает его работу.
Как это исправить:
- Прочитай в дампе самые верхние строки под
Server thread dump. Если там указано название плагина или мода, это серьёзный признак того, что причина в нём. - Останови сервер, обнови затронутый плагин в разделе Плагины или мод в разделе Моды либо удали его для проверки и перезапусти сервер.
- Если дампы появляются всё чаще, проверь оперативную память, свои плагины и дальность прорисовки
view-distanceвserver.properties. - Отдельные дампы, например при запуске или при сохранении большого мира, можно просто понаблюдать, не вмешиваясь сразу.
Подробнее: Как правильно устранить «Can't keep up» и тайм-аут Watchdog
„ChunkTaskScheduler“: Paper ожидает загрузки или генерации чанка
Так выглядит сообщение:
[ChunkTaskScheduler] Chunk wait task info below:
[ChunkTaskScheduler] Chunk holder: NewChunkHolder{world=<World>, chunkX=<x>, chunkZ=<z>, …, currentGenStatus=minecraft:initialize_light, requestedGenStatus=minecraft:full, …}
Что за этим стоит: Paper ждал загрузки или генерации чанка (участка мира размером 16 × 16 блоков) дольше ожидаемого и записал диагностику. В этот момент сервер зависает. currentGenStatus показывает достигнутое состояние, requestedGenStatus — целевое. Чаще всего причина в перегрузке: генерация мира, много игроков, находящихся далеко друг от друга, или медленные плагины. Реже повреждён регион.
Как это исправить:
- Во вкладке Файлы уменьши дальность прорисовки
view-distanceвserver.propertiesи перезапусти сервер. - Сгенерируй мир заранее: Chunky: предварительная генерация мира Minecraft.
- Если доступен spark, исследуй нагрузку во время сбоя командой
spark profiler start --timeout 120в Консоль. Отчёт покажет, какие процессы требуют времени. - Если проблема повторяется в одном и том же мире и с теми же координатами чанка, проверь соседние строки лога на ошибки загрузки этого региона. При подтверждённом повреждении останови сервер, сохрани текущее состояние и восстанови неповреждённую копию в разделе Резервные копии. Изменения, сделанные после создания этой копии, при этом будут потеряны.
Полезно знать: Очень большие координаты указывают на путешествия далеко от центра мира. Подходящая граница мира ограничит дальнейшее исследование.
«The server has stopped responding»: Paper Watchdog сообщает о зависании
Так выглядит сообщение:
The server has stopped responding! This is (probably) not a Paper bug.
If you see a world save or edit, then it means you did far more than your server can handle at once
If this is the case, consider increasing timeout-time in spigot.yml but note that this will replace the crash with LARGE lag spikes
В чём причина: Эти строки относятся к информационному блоку Paper Watchdog, который обнаруживает длительную блокировку главного потока, то есть потока игрового процесса. Во время зависания игровой процесс стоит на месте; при длительной блокировке Watchdog завершает работу сервера. Типичные причины: перегруженные плагины, крупные операции с миром или блокирующие обращения по HTTP и к базе данных. Дамп потоков ниже показывает вызовы программы, выполнявшиеся в этот момент.
Как это исправить:
- Прочитай дамп потоков в
logs/latest.logв разделе Файлы. Проверь упомянутые плагины на наличие обновлений; измени их конфигурацию или ради теста удали их при остановленном сервере. - Если в дампе видна обработка мира или сохранение, раздели крупные действия, например с WorldEdit, на более мелкие шаги.
- Если в дампе видны обращения по HTTP или к MySQL, проверь у соответствующего плагина соединение и доступность сервиса.
- Увеличение
timeout-timeвspigot.ymlпродлевает время ожидания, но не устраняет блокировку. - При повторяющихся зависаниях уменьши нагрузку от плагинов и проверь оперативную память.
Подробнее: Как правильно устранить «Can't keep up» и тайм-аут Watchdog
Задача чанка в Paper завершается ошибкой BootstrapMethodError
Так выглядит сообщение:
[ca.spottedleaf.concurrentutil.executor.thread.BalancedPrioritisedThreadPool] Exception thrown from thread <Поток>
java.lang.BootstrapMethodError: bootstrap method initialization exception
Что за этим стоит: Paper загружает и генерирует чанки в собственных потоках, то есть параллельных рабочих цепочках рядом с основной игрой. В одном из них Java не смогла подготовить точку вызова в программе. Возможные причины: ошибка в Paper, несовместимое расширение или неподдерживаемая версия Java. Одно лишь сообщение не указывает ни на одну из этих причин.
Как это исправить:
- Обнови Paper в разделе Версия до актуальной стабильной сборки твоей версии Minecraft.
- Используй версию Java, которую поддерживает эта сборка: Какая версия Java нужна твоему серверу Minecraft?
- Прочитай полный стек вызовов в
logs/latest.log. Если строкаCaused byназывает плагин, обнови его в разделе Плагины. - Не заменяй библиотеки сервера вручную. Это скорее приведёт к новым ошибкам.
- Если ошибка повторяется после обновления, сообщи полный стек вызовов проекту Paper.
Minecraft не может сохранить отчёт о сбое
Так выглядит сообщение:
We were unable to save this crash report to disk.
Что за этим стоит: Сообщение относится к записи отчёта о сбое. После ошибки Minecraft попытался сохранить диагностику на диск, но не смог записать файл отчёта. Причина первоначальной ошибки указана ранее в Консоль; отсутствие отчёта усложняет дальнейший поиск неисправности.
Как это исправить:
- Сначала сохрани полный блок с ошибкой из Консоль, включая строки перед этим сообщением.
- Во вкладке Файлы проверь имеющиеся файлы в
crash-reports/, а такжеlogs/latest.log. Прочитай конкретное сообщение об ошибке записи и проверь свободное место на диске. - Устрани указанную там причину. Если путь по-прежнему недоступен для записи, открой тикет и укажи время и ошибку записи.
Твоего сообщения здесь нет?
Прочитай сообщение целиком в logs/latest.log, и прежде всего строки перед ним: у перегрузки почти всегда есть причина, которая находится перед первым предупреждением. В стектрейсе или thread dump названия пакетов, то есть имена папок, разделённые точками, например com.<Разработчик>.<Плагин>, и имена файлов вроде <Плагин>.jar показывают, какой плагин или мод участвует. Перед изменением файлов конфигурации создай резервную копию в разделе Резервные копии. Если не получается разобраться, открой тикет и укажи время появления сообщения.