Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.
This project is now read‑only. Starting Monday, February 2, please use https://ibm-ceph.atlassian.net/ for all bug tracking management.

Bug 2355689

Summary: [rgw][checksum]: complete-multipart-upload is not returning ChecksumType in the response
Product: [Red Hat Storage] Red Hat Ceph Storage Reporter: Hemanth Sai <hmaheswa>
Component: RGWAssignee: Matt Benjamin (redhat) <mbenjamin>
Status: CLOSED ERRATA QA Contact: Hemanth Sai <hmaheswa>
Severity: high Docs Contact: Rivka Pollack <rpollack>
Priority: unspecified    
Version: 8.0CC: ceph-eng-bugs, cephqe-warriors, mbenjamin, mkasturi, rpollack, tserlin
Target Milestone: ---   
Target Release: 8.0z3   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: ceph-19.2.0-124.el9cp Doc Type: No Doc Update
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2025-04-07 15:27:39 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Hemanth Sai 2025-03-28 08:13:51 UTC
Description of problem:
complete-multipart-upload is not returning ChecksumType in the response along with checksum.
this doc says ChecksumType will also be returned in complete-multipart-upload response
https://docs.aws.amazon.com/cli/latest/reference/s3api/complete-multipart-upload.html

but get-object-attributes returns ChecksumType also as expected.


log snippet:

multipart upload for obj2_awsv2_default_checksum_verify_checksum_type_sha1_multi
executing cmd: /usr/local/bin/aws s3api create-multipart-upload --bucket bkt1 --key obj2_awsv2_default_checksum_verify_checksum_type_sha1_multi --endpoint-url http://10.0.65.187:80 --checksum-algorithm sha1
cmd excuted
{
    "ChecksumAlgorithm": "SHA1",
    "Bucket": "bkt1",
    "Key": "obj2_awsv2_default_checksum_verify_checksum_type_sha1_multi",
    "UploadId": "2~1o6JU2JKkM08u50n8CJ0cpou5R5XFel"
}

executing cmd: /usr/local/bin/aws s3api upload-part --bucket bkt1 --key obj2_awsv2_default_checksum_verify_checksum_type_sha1_multi --endpoint-url http://10.0.65.187:80 --part-number 1 --upload-id 2~1o6JU2JKkM08u50n8CJ0cpou5R5XFel --body obj10MB.parts/aa --checksum-algorithm sha1
cmd excuted
{
    "ETag": "\"5f363e0e58a95f06cbe9bbc662c5dfb6\"",
    "ChecksumSHA1": "LpXXWCxTWD+or7VOD+eiWXySy7o="
}

executing cmd: /usr/local/bin/aws s3api upload-part --bucket bkt1 --key obj2_awsv2_default_checksum_verify_checksum_type_sha1_multi --endpoint-url http://10.0.65.187:80 --part-number 2 --upload-id 2~1o6JU2JKkM08u50n8CJ0cpou5R5XFel --body obj10MB.parts/ab --checksum-algorithm sha1
cmd excuted
{
    "ETag": "\"443b86c26729f5f24407c7236957d653\"",
    "ChecksumSHA1": "muoQKAGJRnSzaacZnt59tAAJp1E="
}

executing cmd: /usr/local/bin/aws s3api complete-multipart-upload --bucket bkt1 --key obj2_awsv2_default_checksum_verify_checksum_type_sha1_multi --endpoint-url http://10.0.65.187:80 --upload-id 2~1o6JU2JKkM08u50n8CJ0cpou5R5XFel --multipart-upload file://parts.json
cmd excuted
{
    "Location": "http://10.0.65.187/bkt1/obj2_awsv2_default_checksum_verify_checksum_type_sha1_multi",
    "Bucket": "bkt1",
    "Key": "obj2_awsv2_default_checksum_verify_checksum_type_sha1_multi",
    "ETag": "\"bf4ac386d613c42233666c89a2571b61-2\"",
    "ChecksumSHA1": "QA/1P9V02ipPHOPyWBbPMkvziFg=-2"
}

executing cmd: /usr/local/bin/aws --endpoint-url http://10.0.65.187:80 s3api get-object-attributes --bucket bkt1 --key obj2_awsv2_default_checksum_verify_checksum_type_sha1_multi --object-attributes checksum etag ObjectParts ObjectSize StorageClass
cmd excuted
{
    "LastModified": "2025-03-27T11:45:15+00:00",
    "ETag": "bf4ac386d613c42233666c89a2571b61-2",
    "Checksum": {
        "ChecksumSHA1": "QA/1P9V02ipPHOPyWBbPMkvziFg=-2",
        "ChecksumType": "COMPOSITE"
    },
    "ObjectParts": {
        "TotalPartsCount": 2,
        "IsTruncated": false,
        "Parts": [
            {
                "PartNumber": 1,
                "Size": 5242880,
                "ChecksumSHA1": "LpXXWCxTWD+or7VOD+eiWXySy7o="
            },
            {
                "PartNumber": 2,
                "Size": 4757120,
                "ChecksumSHA1": "muoQKAGJRnSzaacZnt59tAAJp1E="
            }
        ]
    },
    "StorageClass": "STANDARD",
    "ObjectSize": 10000000
}



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

How reproducible:
always

Steps to Reproduce:
1.create multipart upload with any checksum algorithm in the request
2.upload parts
3.complete-multipart-upload is not returning ChecksumType in the request along with checksum value. but the get-object-attributes of the object returns both checksum and ChecksumType

Actual results:
complete-multipart-upload is not returning ChecksumType in the response along with checksum.

Expected results:
expected complete-multipart-upload returns ChecksumType also in the response along with checksum value.

Additional info:
logs: https://docs.google.com/document/d/1v__zZu6UhFdoEeABpEYf5cA46wLQOWh0ImKvEIXtZUA/edit?usp=sharing

Comment 12 errata-xmlrpc 2025-04-07 15:27:39 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

Comment 13 Red Hat Bugzilla 2025-08-06 04:25:21 UTC
The needinfo request[s] on this closed bug have been removed as they have been unresolved for 120 days