Project

General

Profile

Actions

Feature #5218

open

rgw: make bucket removal "atomic"

Added by Greg Farnum almost 11 years ago. Updated over 4 years ago.

Status:
New
Priority:
Normal
Assignee:
-
Target version:
-
% Done:

0%

Source:
Support
Tags:
Backport:
Reviewed:
Affected Versions:
Pull request ID:

Description

Right now, bucket removal consists of two steps:
1) Remove the bucket object (making sure the bucket index doesn't list any objects),
2) remove the bucket from the user index.

If the daemon doing the removal fails between those two steps, nothing cleans it up appropriately and the tools don't really handle it right. The amount of damage it can cause is pretty limited and it's easy to clean up, but it's not a scenario we want to run into or have to deal with. We should instead do deletion in a way that subsequent readers can clean up. eg:
1) mark bucket as to-delete in user index
2) delete bucket index object
3) remove bucket from user index object

Then if it fails partway through, subsequent readers of the user bucket index will see it marked that way and can re-do the deletion steps.

Actions #1

Updated by Greg Farnum almost 11 years ago

  • Source changed from other to Support
Actions #2

Updated by JuanJose Galvez almost 11 years ago

When fixed, will this be backported to bobtail?

Actions #3

Updated by Greg Farnum almost 11 years ago

Don't know since we don't have a design; but probably not as I suspect it will require a (very minor) format change/extension.

Actions #4

Updated by Neil Levine almost 11 years ago

  • Status changed from New to 12
Actions #5

Updated by Patrick Donnelly over 4 years ago

  • Status changed from 12 to New
Actions

Also available in: Atom PDF