Bug 2355038 - [rgw][checksum]: get-object-attributes for multipart objects uploaded with SHA1 or SHA256 algorithm is returning FULL_OBJECT for ChecksumType instead of COMPOSITE [NEEDINFO]
Summary: [rgw][checksum]: get-object-attributes for multipart objects uploaded with SH...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Ceph Storage
Classification: Red Hat Storage
Component: RGW
Version: 8.0
Hardware: Unspecified
OS: Unspecified
unspecified
urgent
Target Milestone: ---
: 8.0z3
Assignee: Matt Benjamin (redhat)
QA Contact: Hemanth Sai
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2025-03-26 11:55 UTC by Hemanth Sai
Modified: 2025-04-07 15:27 UTC (History)
6 users (show)

Fixed In Version: ceph-19.2.0-124.el9cp
Doc Type: No Doc Update
Doc Text:
Clone Of:
Environment:
Last Closed: 2025-04-07 15:27:34 UTC
Embargoed:
hmaheswa: needinfo? (mbenjamin)
mkasturi: needinfo+
mkasturi: needinfo? (mbenjamin)
rpollack: needinfo? (mbenjamin)


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker RHCEPH-10968 0 None None None 2025-03-26 11:57:08 UTC
Red Hat Product Errata RHSA-2025:3635 0 None None None 2025-04-07 15:27:37 UTC

Description Hemanth Sai 2025-03-26 11:55:02 UTC
Description of problem:
get-object-attributes for multipart objects uploaded with SHA1 or SHA256 is returning FULL_OBJECT for ChecksumType instead of COMPOSITE


log snippet:

executing cmd: /usr/local/bin/aws --version
cmd excuted
aws-cli/2.24.24 Python/3.12.9 Linux/5.14.0-503.31.1.el9_5.x86_64 exe/x86_64.rhel.9

executing cmd: rhash --sha256 --base64 /home/cephuser/obj10MB
cmd excuted
9eAqpx5n9B15AjoSjKNbrYbPe2ZWlnv+CISzo8QyXq8=  /home/cephuser/obj10MB

multipart upload for obj1_aws_v2_disable_default_cksm_final_sha256_multi
executing cmd: /usr/local/bin/aws s3api create-multipart-upload --bucket bkt1 --key obj1_aws_v2_disable_default_cksm_final_sha256_multi --endpoint-url http://10.0.65.187:80 --checksum-algorithm sha256
cmd excuted
{
    "ChecksumAlgorithm": "SHA256",
    "Bucket": "bkt1",
    "Key": "obj1_aws_v2_disable_default_cksm_final_sha256_multi",
    "UploadId": "2~nyWoQlZnHn-HUXsE_KcwjHU_tWkx8Tv"
}

executing cmd: /usr/local/bin/aws s3api upload-part --bucket bkt1 --key obj1_aws_v2_disable_default_cksm_final_sha256_multi --endpoint-url http://10.0.65.187:80 --part-number 1 --upload-id 2~nyWoQlZnHn-HUXsE_KcwjHU_tWkx8Tv --body obj10MB.parts/aa --checksum-algorithm sha256
cmd excuted
{
    "ETag": "\"5f363e0e58a95f06cbe9bbc662c5dfb6\"",
    "ChecksumSHA256": "wDbLt1U6kJ+LiHfURhkkMH8n7LZs/5KO7q/VacOIfik="
}

executing cmd: /usr/local/bin/aws s3api upload-part --bucket bkt1 --key obj1_aws_v2_disable_default_cksm_final_sha256_multi --endpoint-url http://10.0.65.187:80 --part-number 2 --upload-id 2~nyWoQlZnHn-HUXsE_KcwjHU_tWkx8Tv --body obj10MB.parts/ab --checksum-algorithm sha256
cmd excuted
{
    "ETag": "\"443b86c26729f5f24407c7236957d653\"",
    "ChecksumSHA256": "g9U+0gkMfhDLyDKG67OYsRWxzSkTx4aX6fdzCgv3RZA="
}

executing cmd: /usr/local/bin/aws s3api complete-multipart-upload --bucket bkt1 --key obj1_aws_v2_disable_default_cksm_final_sha256_multi --endpoint-url http://10.0.65.187:80 --upload-id 2~nyWoQlZnHn-HUXsE_KcwjHU_tWkx8Tv --multipart-upload file://parts.json
cmd excuted
{
    "Location": "http://10.0.65.187/bkt1/obj1_aws_v2_disable_default_cksm_final_sha256_multi",
    "Bucket": "bkt1",
    "Key": "obj1_aws_v2_disable_default_cksm_final_sha256_multi",
    "ETag": "\"bf4ac386d613c42233666c89a2571b61-2\"",
    "ChecksumSHA256": "59+oOkjPZabANmlP9cAY5hT3KUr562wtpD2Phpxj7+Q="
}


executing cmd: /usr/local/bin/aws --endpoint-url http://10.0.65.187:80 s3api get-object-attributes --bucket bkt1 --key obj1_aws_v2_disable_default_cksm_final_sha256_multi --object-attributes checksum etag ObjectParts ObjectSize StorageClass
cmd excuted
{
    "LastModified": "2025-03-24T18:46:18+00:00",
    "ETag": "bf4ac386d613c42233666c89a2571b61-2",
    "Checksum": {
        "ChecksumSHA256": "59+oOkjPZabANmlP9cAY5hT3KUr562wtpD2Phpxj7+Q=",
        "ChecksumType": "FULL_OBJECT"
    },
    "ObjectParts": {
        "TotalPartsCount": 2,
        "IsTruncated": false,
        "Parts": [
            {
                "PartNumber": 1,
                "Size": 5242880,
                "ChecksumSHA256": "wDbLt1U6kJ+LiHfURhkkMH8n7LZs/5KO7q/VacOIfik="
            },
            {
                "PartNumber": 2,
                "Size": 4757120,
                "ChecksumSHA256": "g9U+0gkMfhDLyDKG67OYsRWxzSkTx4aX6fdzCgv3RZA="
            }
        ]
    },
    "StorageClass": "STANDARD",
    "ObjectSize": 10000000
}


Version-Release number of selected component (if applicable):
ceph version 19.2.0-120.el9cp

How reproducible:
always

Steps to Reproduce:
1.upload multipart object with checksum-algorithm sha1 or sha256
2.perform get-object-attributes of the above object, it returns checksum-type as FULL_OBJECT instead of composite
3.

Actual results:
get-object-attributes for multipart objects uploaded with SHA1 or SHA256 is returning FULL_OBJECT for ChecksumType instead of COMPOSITE

Expected results:
Expected get-object-attributes for multipart objects uploaded with SHA1 or SHA256 should return COMPOSITE for ChecksumType

Additional info:

Comment 15 errata-xmlrpc 2025-04-07 15:27:34 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (Important: Red Hat Ceph Storage 8.0 security, bug fix, and enhancement updates), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2025:3635


Note You need to log in before you can comment on or make changes to this bug.