Project

General

Profile

Bug #15540

multisite: Issues with Deleting Buckets

Added by Abhishek Lekshmanan almost 3 years ago. Updated almost 3 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
-
Target version:
-
Start date:
04/19/2016
Due date:
% Done:

0%

Source:
other
Tags:
Backport:
jewel
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:

Description

Currently the way delete bucket works is we delete bucket from the zone processing the request first and then fwd the request to master, this creates issues for eg. when using swift api, where a delete deletes the object first, and then the bucket, or even when we delete and object and immediately issue a delete bucket request, we end up getting a 500, the bucket index in secondary zone now has dropped the bucket, the master zone has failed this request with a 409, and ultimately we return a 500

The following example shows the ops in a secondary zone:

s3 -us list delete-me
Content-Type: application/xml
Request-Id: tx0000000000000000003b1-0057161b4d-100e-us-west
Content-Length: 496
                       Key                             Last Modified      Size 
--------------------------------------------------  --------------------  -----
foo                                                 2016-04-19T09:49:28Z    71M
(openstack)[abhishekl@pxe-sup3:/ssd/builds/cpp/ceph/src](⎇ master)$ 
s3 -us list
Content-Type: application/xml
Request-Id: tx0000000000000000003b3-0057161b4f-100e-us-west
Content-Length: 392
                         Bucket                                 Created       
--------------------------------------------------------  --------------------
delete-me                                                 2016-04-19T09:47:19Z
foobar                                                    2016-04-19T09:47:05Z
(openstack)[abhishekl@pxe-sup3:/ssd/builds/cpp/ceph/src](⎇ master)$ 
s3 -us delete delete-me

ERROR: ErrorBucketNotEmpty
  Extra Details:
    BucketName: delete-me
    RequestId: tx0000000000000000004c4-0057161b61-100e-us-west
    HostId: 100e-us-west-us

(openstack)[abhishekl@pxe-sup3:/ssd/builds/cpp/ceph/src](⎇ master)$ 
s3 -us delete delete-me/foo
(openstack)[abhishekl@pxe-sup3:/ssd/builds/cpp/ceph/src](⎇ master)$ 
s3 -us delete delete-me

ERROR: ErrorUnknown
  Extra Details:
    BucketName: delete-me
    RequestId: tx00000000000000000056b-0057161b7a-100e-us-west
    HostId: 100e-us-west-us


Related issues

Copied to rgw - Backport #15707: jewel: multisite: Issues with Deleting Buckets Resolved

History

#1 Updated by Abhishek Lekshmanan almost 3 years ago

  • Status changed from New to In Progress

#2 Updated by Abhishek Lekshmanan almost 3 years ago

Sorry previous link linked to the issue itself, here's the master PR https://github.com/ceph/ceph/pull/8655, we need a backport for jewel as well for this

#3 Updated by Nathan Cutler almost 3 years ago

  • Backport set to jewel

#4 Updated by Nathan Cutler almost 3 years ago

  • Status changed from In Progress to Pending Backport

#5 Updated by Nathan Cutler almost 3 years ago

  • Copied to Backport #15707: jewel: multisite: Issues with Deleting Buckets added

#6 Updated by Loic Dachary almost 3 years ago

  • Status changed from Pending Backport to Resolved

Also available in: Atom PDF