Как найти ближайшие слоты лидерства валидатора Solana перед обслуживанием

При планировании короткого перезапуска валидатора нужны абсолютные номера слотов лидерства. Расписание возвращает индексы относительно начала выбранной эпохи.

Привяжите расписание к эпохе

Запросите getEpochInfo и вычислите начало эпохи как absoluteSlot − slotIndex. Подставьте полученный absoluteSlot вместо null, чтобы переход эпохи между запросами не изменил выбранное расписание. Вместо шаблона укажите публичный ключ идентичности валидатора.

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "getLeaderSchedule",
  "params": [
    null,
    {
      "identity": "VALIDATOR_IDENTITY",
      "commitment": "finalized"
    }
  ]
}

Переведите индексы назначений в абсолютные слоты

Если эпоха началась в 400000, а в расписании указаны индексы 120–123, назначение охватывает слоты 400120–400123. От 400110 до первого назначения остаётся десять шагов по слотам. В оценку длительности работ включите запуск и догоняющее воспроизведение.

Ответ null оставляет назначения для этой эпохи неизвестными. Если работы затрагивают границу эпох, потребуется расписание следующей эпохи, когда оно станет доступно. Перед остановкой валидатора проверьте фактический слот.

Документация