Project

General

Profile

Idea #16427

Updated by Tom Clegg over 4 years ago

In some cases, even when a collection has been deleted and keep-balance has trashed its data blocks, the collection is still partially or fully recoverable: 
 * some blocks may not have been trashed because they are still referenced by other collections 
 * some blocks may still be in the recoverable "trashed" state, if BlobTrashLifetime has not arrived yet 

 Given a manifest (or the UUID of a a collection update/delete log entry that has a manifest in old_attributes), the recovery command ("arvados-server undelete") recover") should use keepstore's HEAD and untrash APIs to untrash the data as needed, make a new manifest with fresh signatures, and save a new collection. 

 If a block is not recoverable, the command should continue to untrash as many as it can, and report how many were attempted/successful, but not save a new collection. (Future improvement: save a partial collection in this case, omitting any files affected by the missing blocks.)

Back