rgw: rectify 202 Accepted in response for PUT on existing bucket.

Fixes: #11148
Backport: hammer
Signed-off-by: Radoslaw Zarzynski <rzarzynski@mirantis.com>
This commit is contained in:
Radoslaw Zarzynski 2015-03-19 14:52:18 +01:00
parent 9ad1b283dc
commit 3998fe7e02

View File

@ -1409,10 +1409,11 @@ void RGWCreateBucket::execute()
/* bucket already existed, might have raced with another bucket creation, or
* might be partial bucket creation that never completed. Read existing bucket
* info, verify that the reported bucket owner is the current user.
* If all is ok then update the user's list of buckets
* If all is ok then update the user's list of buckets.
* Otherwise inform client about a name conflict.
*/
if (info.owner.compare(s->user.user_id) != 0) {
ret = -ERR_BUCKET_EXISTS;
ret = -EEXIST;
return;
}
s->bucket = info.bucket;
@ -1424,10 +1425,9 @@ void RGWCreateBucket::execute()
if (ret < 0) {
ldout(s->cct, 0) << "WARNING: failed to unlink bucket: ret=" << ret << dendl;
}
}
if (ret == -EEXIST)
} else if (ret == -EEXIST || (ret == 0 && existed)) {
ret = -ERR_BUCKET_EXISTS;
}
}
int RGWDeleteBucket::verify_permission()