About Image Dependency Expiration Cleanup
Image Dependency Expiration Cleanup checks whether any other backup images depend on an expiring backup image. It runs as part of an image clean-up job. The feature prevents a backup image from expiring if it has any subsequent dependent backup images.
For example, when it expires a new FULL backup image, NetBackup checks whether there are any backup images that depend on the FULL image. (These dependent images include differential incremental (INCR) or cumulative incremental (CINCR) images. If the expiring FULL image has dependencies, it is put on hold and blocked from expiring until all dependencies expire or are removed. Similarly, an expiring incremental backup image with any backup image dependencies is put on hold until all the dependencies expire or are removed. This process can lead to holding a chain of dependent images. Consider an example where a chain of 10 expired images is held for a dependent copy. In that case it takes 10 image cleanup jobs to process and remove all of the images in the chain.
Explicit expiration (either with bpexpdate or the Expire action in the web UI) does not perform this check and therefore does not block an image from expiring.
Image Dependency Expiration Cleanup applies only to new backup images created with one of these supported policies:
Cloud
CloudStorage
Kubernetes
MS-Windows
NDMP
Hyper-V
HyperScale
Hypervisor
NAS-Data-Protection
Standard
VMware
Nutanix-AHV
Note:
When you configure schedules, keep in mind that "forever" incremental backups might lead to holding all the images perpetually because each image depends on other image. So, it is recommended that you configure schedules in combination with FULL schedules.
Images that are put on hold due to Image Dependency Expiration Cleanup are marked as Held for dependent copy and reported at the copy level.
To see whether an image copy is held, enter the following command:
bpimagelist -backupid <backup_ID> -[-l|-L|-json]
Review the output for the following statement:
Held For Dependent Copy: yes
You can also check the NetBackup web UI (Catalog > <backup_image>) to see whether an image copy is held.
Note:
Image Dependency Expiration Cleanup is enabled by default. When it is enabled, image cleanup jobs can run up to 2.5 times slower than when the feature is disabled.
To see whether Image Dependency Expiration Cleanup is enabled, enter the following command:
bpconfig -U
Review the output for the following statement:
Image Expiry Dependency Check:(enabled)
To disable Image Dependency Expiration Cleanup, enter the following command:
bpconfig -image_expiry_dependency_check 0
To turn on the feature, enter the following command:
bpconfig -image_expiry_dependency_check 1
You can also use a REST API to turn off or turn on the feature. See the API documentation for more information.