Bug #59471
openObject Ownership Inconsistent
0%
Description
The `owner` returned via the S3 API is not the same as that returned using `radosgw-admin bi list`. Example below:
```
[root@6369abc6056f /]# radosgw-admin bi list --bucket=repository-4
[
{
"type": "plain",
"idx": "test",
"entry": {
"name": "test",
"instance": "",
"ver": {
"pool": 7,
"epoch": 2
},
"locator": "",
"exists": true,
"meta": {
"category": 1,
"size": 0,
"mtime": "2023-04-17T13:41:05.436888Z",
"etag": "d41d8cd98f00b204e9800998ecf8427e",
"storage_class": "",
"owner": "nautilus",
"owner_display_name": "nautilus",
"content_type": "",
"accounted_size": 0,
"user_data": "",
"appendable": false
},
"tag": "7ad03645-e807-4784-be60-3f6ee0d323aa.5486.9422426110878657515",
"flags": 0,
"pending_map": [],
"versioned_epoch": 0
}
}
]
```
S3 API response:
```
<ListBucketResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Name>
repository-4</Name>
<Prefix>
</Prefix>
<MaxKeys>
1000</MaxKeys>
<Delimiter>
/</Delimiter>
<IsTruncated>
false</IsTruncated>
<Contents>
<Key>
test</Key>
<LastModified>
2023-04-17T13:41:05.436Z</LastModified>
<ETag>
"d41d8cd98f00b204e9800998ecf8427e"</ETag>
<Size>
0</Size>
<StorageClass>
STANDARD</StorageClass>
<Owner>
<ID>
user-4</ID>
<DisplayName>
</DisplayName>
</Owner>
<Type>
Normal</Type>
</Contents>
<KeyCount>
1</KeyCount>
</ListBucketResult>
```
It would appear the requestor is simply returned by the S3 API, rather than reading the metadata on the object.
Updated by Daniel Gryniewicz 12 months ago
So, I've looked into this on main, and this works correctly. The resulting owner in the S3 list (as shown by s3cmd -d ls) is the owner of the object, not the submitter of the request. What version of ceph did you use to test this?
Updated by Daniel Gryniewicz 12 months ago
- Status changed from New to Need More Info
Updated by Casey Bodley 12 months ago
- Status changed from Need More Info to Fix Under Review
- Backport set to pacific quincy reef
- Pull request ID set to 51265
Updated by Casey Bodley 11 months ago
- Status changed from Fix Under Review to Pending Backport
- Assignee changed from Daniel Gryniewicz to Casey Bodley
Updated by Backport Bot 11 months ago
- Copied to Backport #61351: pacific: Object Ownership Inconsistent added
Updated by Backport Bot 11 months ago
- Copied to Backport #61352: reef: Object Ownership Inconsistent added
Updated by Backport Bot 11 months ago
- Copied to Backport #61353: quincy: Object Ownership Inconsistent added
Updated by Aidan Damerell 11 months ago
I've just tried this from the container build (https://quay.io/repository/ceph/daemon?tab=tags&tag=latest-devel) (SHA256: 4a90a6835932) and it still appears to be returning whoever performs the request. Based on the build time I assumed this build included this patch, but I could be wrong?