Implement media retry functionality and enhance error handling
Added endpoints for retrying failed media processing, allowing users to requeue media assets that encountered errors. Introduced error messages for scenarios where a media asset cannot be retried due to its status. Updated the MaintenanceBackgroundService to remove orphaned episodes and recompute group statistics, ensuring data integrity. Enhanced the frontend to support retry actions, including bulk retry options for failed media. Updated localization strings to reflect new features in both English and Russian.
This commit is contained in:
@@ -124,6 +124,18 @@ Override, начинающийся в будущем, подхватится и
|
||||
и потолок повторов, и окно обязано покрывать самое долгое правило канала. Сегменты ассетов при этом
|
||||
не трогаются — ассеты переиспользуются, чистится только расписание.
|
||||
|
||||
**Упавшую обработку перезапускают, а не переливают.** Файл при падении остаётся на месте — упала
|
||||
нарезка: ffmpeg упёрся в таймаут на длинном фильме, кончилось место, отвалился диск. Кнопка в списке
|
||||
медиа возвращает ассет в `Pending` и будит обработчик; на фильтре «Ошибка» есть и массовый
|
||||
перезапуск — падают такие вещи пачкой и по одной причине. Идущую обработку и готовые ассеты
|
||||
перезапуск не трогает: первое оставило бы ffmpeg работать в пустоту, второе — переработало бы то,
|
||||
что уже стоит в эфире.
|
||||
|
||||
**Удаление ассета снимает и серию.** Серия ссылается на ассет без внешнего ключа, поэтому БД сама
|
||||
её не тронет, и в шоу остаётся строка, за которой нет файла: в эфир она не идёт (играют только
|
||||
готовые), а в карточке числится. Уже накопившиеся такие строки подчищает обслуживание — там же,
|
||||
где чистятся осиротевшие заставки и пересчитывается статистика групп.
|
||||
|
||||
**Дыры.** В норме их нет. Если у канала нет ни одного включённого шоу с готовыми сериями (или
|
||||
планировщик отстал) — эфир играет `FillerAssetId` по кругу, пока не появится расписание.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user