Deal with a nasty circular dependency when destroying a blockstore.
If we destroy the Blockstore DB state first and then the server-side object destruction fails, we leave behind a dangling object and potentially Lease DB state. But if we destroy the object first and the DB state removal fails, we are left with a blockstore with no server-side object and thus we cannot look it up in the future to retry the destruction. We choose to go with the latter and just create a tiny server-side stub object if the DB state removal fails.
Showing with 55 additions and 12 deletions