Состояния БД: автомат состояний

Stable

Как интерпретировать состояния базы и autoscale‑фазы в SPG99.

Обновлено: 21 марта 2026 г.

Control Plane возвращает для базы поле state. Это главный индикатор того, что происходит с ресурсом прямо сейчас. Но в новой модели полезно смотреть и на state, и на scale_state.

Основные состояния state

creating

База создаётся: каталог и storage‑сущности ещё подготавливаются.

booting

Writer запускается. Это нормальное состояние cold start.

ready

База запущена и готова принимать подключения.

stopping

Платформа останавливает writer.

stopped

Writer выключен. Следующее подключение через Gateway может автоматически разбудить базу.

terminated

Совместимый alias для stopped‑состояния: по смыслу база не активна.

deleting

Идёт удаление ресурса и его storage‑сущностей.

error

Во время запуска, остановки, bootstrap или handoff произошла ошибка.

Autoscale‑фазы scale_state

Если state описывает жизненный цикл базы в целом, то scale_state описывает конкретно writer autoscaler.

STEADY

Нормальное устойчивое состояние. Handoff не идёт.

PREPARING

Платформа готовит candidate writer под новый профиль.

FREEZING

Gateway получает команду перестать выдавать новые checkout'ы на старый writer.

DRAINING

Система ждёт, пока завершится активная нагрузка и можно будет безопасно переключать writer.

STOPPING_OLD

Старое поколение writer останавливается.

STARTING_NEW

Новое поколение writer запускается или доводится до готовности.

SWITCHING

Control Plane переключает каталог и control state на новый writer.

COOLDOWN

Защитная пауза после handoff, чтобы не дергать writer туда‑сюда.

FAILED

Переход сорвался. Нужно смотреть scale_failure_reason, логи и метрики.

Как это читать на практике

  • state=ready + scale_state=STEADY — база просто работает.
  • state=ready + scale_state=DRAINING — база работает, но платформа уже готовит controlled handoff.
  • state=stopped + scale_state=STEADY — база спит и ждёт следующего подключения.
  • state=error или scale_state=FAILED — нужен разбор Monitoring / Logs.

Главное правило

Не воспринимайте stopped и даже freeze_new_checkouts=true как автоматическую аварию. В SPG99 это часть штатной serverless‑и autoscale‑модели.