Details
Description
What's the issue?
When resuming a cloud backup, we validate that the resume can be continued; this check is slightly too aggressive at the moment.
1) Fetch the known parts from the upload manifest
2) Fetch the remote parts (those that the object store knows about)
3) Validate that all the local parts, exist in the remote
We currently allow the remote parts to contain more elements than the local parts (which is valid i.e. manifest persist fails) however, this breaks the validation logic.
1) Sort the local parts by id
2) Sort the remote parts by id
3) Compare all the parts
If remote has more elements, it's unlikely to pass, even though the resume may actually be valid.