Перейти к основному содержимому

Коды ошибок обновления, экспорта конфигурации и самопроверки (mpbx-upgrade)

Возвращаются mpbx upgrade check, mpbx config export, mpbx selftest и mpbx sizing (W4-DEP-05, W7-PLAT-01a), а также показываются mpbx-ctl upgrade, mpbx-ctl rollback и deploy/k8s/scripts/upgrade.sh. Отклонённое обновление ничего не меняет: проверка выполняется до создания снимка. Сообщения указывают версии, номера миграций, имена таблиц и порты; никогда не содержат секрет, пароль, токен или строку. Руководство: обновление и откат.

КодВидЗначениеЧто делать
MPBX-UPGRADE-USAGEinvalid_argumentНеверная командная строка (код выхода 2).См. mpbx upgrade --help, mpbx config --help, mpbx selftest --help.
MPBX-UPGRADE-MANIFESTinvalid_argumentФайл release.json некорректен, имеет неизвестный формат, перечисляет более двух прямых источников (N-2), указывает источник, который не старше, содержит ссылку на образ неподходящего вида либо у целевого релиза нет контракта портов, тогда как у установленного он есть.Используйте пакет так, как он опубликован; манифест релиза создаётся build-bundle.sh, а не вручную.
MPBX-UPGRADE-SAME-VERSIONrefusalПакет совпадает с установленным релизом.Ничего делать не нужно. Чтобы восстановить файлы того же релиза, запустите установщик снова.
MPBX-UPGRADE-DOWNGRADErefusalПакет старше установленного релиза.Возврат назад — это откат: mpbx-ctl rollback восстанавливает снимок до обновления. Старый бинарный файл никогда не работает с более новой схемой.
MPBX-UPGRADE-SKIPrefusalУстановленный релиз не может обновляться до целевого напрямую (больше двух релизов назад, N-2, DECISIONS Round 5). В сообщении назван релиз, который нужно установить сначала.Обновитесь до указанного промежуточного релиза, затем до целевого.
MPBX-UPGRADE-CHANNELrefusalЦелевой релиз относится к другому каналу (stable, beta, nightly), чем установка.Передайте --allow-channel-change, если нужна смена канала.
MPBX-UPGRADE-BREAKING-PORTSrefusalПорт по умолчанию различается между релизами (PLAT-UPD-007). Не объявленное изменение: установка невозможна. Объявленное (breaking: ["ports"]): требует --accept-breaking.Прочитайте примечания к релизу, обновите межсетевые экраны, транки и клиентов, затем примите изменение.
MPBX-UPGRADE-BREAKINGrefusalЦелевой релиз объявляет другие несовместимые изменения.Прочитайте примечания к релизу, затем передайте --accept-breaking.
MPBX-UPGRADE-RELEASE-MISMATCHrefusalrelease.json пакета не описывает образ, который он называет: в бинарный файл вшита другая версия релиза или другая последняя миграция.Пакет и images.env не относятся друг к другу; используйте образы релиза этого пакета.
MPBX-UPGRADE-SCHEMA-AHEADrefusalВ базе данных есть миграции, которых не знает цель: она новее цели (обновление было прервано без отката или выполнена попытка понижения версии).Сначала откатите более новое обновление (mpbx-ctl rollback).
MPBX-UPGRADE-SCHEMA-MODIFIEDrefusalПрименённая миграция отличается от файла цели (миграции только добавляются).Не устанавливайте этот релиз поверх этой базы данных; сообщите об ошибке.
MPBX-UPGRADE-SCHEMA-DIRTYrefusalМиграция записана как прерванная на середине.Восстановите последнюю резервную копию, затем обновитесь.
MPBX-UPGRADE-DB-VERSIONrefusalPostgres, ClickHouse или Valkey старше, чем поддерживает целевой релиз (requires в его release.json, W7-PLAT-01a). В сообщении назван сервис, его версия и минимум.Сначала обновите этот сервис. Поставляемые вместе с пакетом сервисы обновляются с пакетом; внешний сервис (Kubernetes external-db) обновляет тот, кто его эксплуатирует.
MPBX-UPGRADE-CERT-EXPIREDrefusalИстёк действующий сертификат TLS установки; обновление перезапускает граничный узел с ним. Сертификаты компаний не проверяются.Продлите его или загрузите новый (консоль администратора, Сертификаты; certificates), либо передайте --accept-expired-cert, если обновление должно пройти.
MPBX-UPGRADE-SETTING-REMOVEDrefusalЗадана переменная окружения, которую целевой релиз больше не читает (deprecated в его release.json). В сообщении указано, что её заменяет.Перейдите на новую настройку в .env, затем обновитесь. Переменная, которая только помечена как устаревшая, выводится как примечание, а не отклоняет обновление.
MPBX-UPGRADE-DATABASEunavailablePostgres (или ClickHouse) не удалось прочитать для проверки, экспорта или самопроверки.В сообщении назван шаг; проверьте, что базы данных работают (mpbx-ctl ps).
MPBX-UPGRADE-EXPORT-DIFFERS(результат)mpbx config export --compare нашёл различающиеся таблицы (код выхода 1); они перечислены. После отката это значит, что восстановление не вернуло конфигурацию до обновления.Посмотрите перечисленные таблицы. Данные после обновления сохранены в базах mpbx_pre_rollback_* и в резервной копии перед откатом.
MPBX-UPGRADE-EXPORT-FORMATinvalid_argumentФайл, переданный в --compare, не является экспортом конфигурации поддерживаемого формата.Сравните с config-export.json снимка.
MPBX-SELFTEST-FAILED(результат)Одна из проверок самопроверки не прошла (код выхода 1); каждая строка называет проверку. После обновления шлюз предлагает откат (или выполняет его с --auto-rollback).См. строку с ошибкой: postgres-login (вход суперпользователя или с BYPASSRLS: изоляция отключена), rls-probe (вход видит строки компаний без компании), postgres-schema, schema-lint, valkey, clickhouse, http, auth-gate, sign-in.

Откат из консоли (mpbx-api-ops, FU-DEP05-M1)​

КодВидЗначениеЧто делать
MPBX-UPGRADE-ROLLBACK-PENDINGconflict (409)POST /system/upgrades/rollback, пока запрос ждёт агента хоста или откат уже выполняется.Подождите; перезагрузите страницу «Обновления». Состояние — rollback_pending в GET /system/upgrades.