Patent ID: 9229818
Filing Date: 2016-01-05
CPC Classification: G06F

Claim Text:
1. A method performed on a computing device, the method comprising: receiving, by the computing device, an indication that, prior to a completion of a started backup procedure, additional free space is needed on a backup storage to complete the started backup procedure, where the received indication comprises a notification that a free space capacity on the backup storage is less than or equal to a first threshold, and where the receiving comprises receiving a value that indicates a maximum amount of space to free; and performing, by the computing device in response to receiving the indication, pruning actions until the free space capacity is equal to or greater than a second threshold, the pruning actions comprising: determining a first backup set that is associated with a particular user and that is currently stored on the backup storage, the first backup set having a first backup date, the first backup date being oldest of all backup dates for backup sets that are associated with the particular user and that are currently stored on the backup storage, where each of the backup sets comprises a group of versions of a corresponding group of files backed up together, and where the received indication is further to delete all but a latest of the versions stored on the backup storage that is also still stored on a source storage; deleting, in response to determining that the first backup set meets one or more deletion conditions, the first backup set, where the one or more deletion conditions comprise a version visibility end time of the first backup set occurring after a start time of the performing; updating, in response to the deleting, pruning data to indicate a second backup set that is associated with the particular user and that is currently stored on the backup storage, the second backup set having a backup date that is more recent than the first backup date but older than any backup date of any other of the backup sets that are associated with the particular user and that are currently stored on the backup storage; and updating metadata to adjust effective start times of one or more of the versions.