You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: ARCHITECTURE.md
+8-4Lines changed: 8 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -398,8 +398,10 @@ osctl/
398
398
- Если дата есть - добавляем в список для обработки
399
399
4.**Проверка снапшотов**: Получаем все снапшоты через `GET /_snapshot/{repo}/*`
400
400
5.**Определение индексов без снапшотов**: Для каждого индекса проверяем наличие валидного снапшота через `HasValidSnapshot`
401
-
6.**Группировка по датам**: Группируем индексы без снапшотов по датам (по убыванию даты)
402
-
7.**Создание снапшотов**: Для каждой группы по датам создаем снапшоты (алгоритм создания ниже)
401
+
6.**Группировка по датам**: Группируем индексы без снапшотов по датам через `GroupIndicesByDate`
402
+
7.**Сортировка дат**: Сортируем даты по возрастанию (от старых к новым) через `sort.Strings`
403
+
8.**Сортировка индексов по размеру**: Для каждой даты получаем индексы с размерами через `GetIndicesWithFields` с сортировкой `ss:asc` (от маленьких к большим) и переупорядочиваем список индексов для даты
404
+
9.**Создание снапшотов**: Для каждой группы по датам создаем снапшоты (алгоритм создания ниже)
403
405
404
406
**Режим 2: Без параметра `--indices-list`**
405
407
1.**Загрузка конфигурации**: Получаем `osctl-indices-config`, `unknown.snapshot` и S3 конфигурацию
@@ -409,8 +411,10 @@ osctl/
409
411
- Пропускаем индексы без даты в названии
410
412
4.**Проверка снапшотов**: Получаем все снапшоты через `GET /_snapshot/{repo}/*`
411
413
5.**Определение индексов без снапшотов**: Для каждого индекса проверяем наличие валидного снапшота через `HasValidSnapshot`
412
-
6.**Группировка по датам**: Группируем индексы без снапшотов по датам (по убыванию даты)
413
-
7.**Создание снапшотов**: Для каждой группы по датам создаем снапшоты (алгоритм создания ниже)
414
+
6.**Группировка по датам**: Группируем индексы без снапшотов по датам через `GroupIndicesByDate`
415
+
7.**Сортировка дат**: Сортируем даты по возрастанию (от старых к новым) через `sort.Strings`
416
+
8.**Сортировка индексов по размеру**: Для каждой даты получаем индексы с размерами через `GetIndicesWithFields` с сортировкой `ss:asc` (от маленьких к большим) и переупорядочиваем список индексов для даты
417
+
9.**Создание снапшотов**: Для каждой группы по датам создаем снапшоты (алгоритм создания ниже)
414
418
415
419
**Алгоритм создания снапшотов для группы по дате:**
416
420
1.**Разделение конфигураций**: Разделяем конфигурации на системные и обычные
0 commit comments