Вступить в клуб →
средняяpythonPostgreSQL в эксплуатации: репликация, бэкапы, HA

Окна, в которых архивация WAL нарушала RPO

Целевой RPO — не больше rpo_minutes минут данных может быть потеряно. Есть моменты успешной отправки сегментов WAL в архив.

Напишите archive_gaps(times, now, rpo_minutes).

  • times — список строк ISO 8601 без часового пояса, например "2026-09-10T10:04:00", в произвольном порядке. now — текущий момент в том же формате.
  • Отсортируйте моменты. Нарушение — промежуток между соседними моментами строго больше rpo_minutes, а также промежуток от последнего момента до now.
  • Верните список пар (начало, конец) в хронологическом порядке, строки — как во входе.
  • Если times пуст, верните [(None, now)].

заготовка решения

def archive_gaps(times, now, rpo_minutes):
    # ваш код
    return None

🔒 Проверка ответа — для участников клуба

  • Автотесты прямо в браузере
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела