Retention policy

retention в iobackup работает по metadata/manifests, а не по glob-поиску файлов. При удалении backup retention удаляет не только manifest, но и физические объекты в destination (artifact + sidecar manifest-файл, если поддерживается provider-ом).

Почему это важно

Пример правил

В job можно описывать правила вида:

Backup удаляется только если он не попадает ни под одно правило.

Что хранится для retention

Это позволяет применять policy одинаково для local и S3 destination.

Аудит retention

Каждое действие retention логируется в agent log как retention cleanup event:

Также события доступны через API:

curl -sS "http://127.0.0.1:8735/api/v1/retention/events"
curl -sS "http://127.0.0.1:8735/api/v1/retention/events?job_id=<job_id>"
curl -sS "http://127.0.0.1:8735/api/v1/retention/events?status=deleted"

Retention артефактов vs metadata retention

Sidecar manifest lifecycle

При успешном backup рядом с data-объектом создаётся sidecar (role=manifest в artifacts[]). При удалении по retention или явном delete агент старается удалить оба объекта. Если sidecar отсутствует (ручное вмешательство, сбой провайдера), rebuild метаданных из object storage будет неполным — опирайтесь на запись в bolt и резервные копии metadata DB.

Safety gaps (планируется ~0.18.4)

Следующее поведение в roadmap / hardening, не полагайтесь на него в текущей версии как на гарантию:

См. также