[ 
https://issues.apache.org/jira/browse/HDDS-16363?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Priyesh Karatha resolved HDDS-16363.
------------------------------------
    Target Version/s: 2.3.0
          Resolution: Fixed

> Recon does not report storage used by incomplete multipart uploads in 
> multipartOpenKeyBytes
> -------------------------------------------------------------------------------------------
>
>                 Key: HDDS-16363
>                 URL: https://issues.apache.org/jira/browse/HDDS-16363
>             Project: Apache Ozone
>          Issue Type: Bug
>            Reporter: Prince Raj
>            Assignee: Priyesh Karatha
>            Priority: Major
>              Labels: pull-request-available
>
> h2. Description
> Recon's storage distribution information does not appear to account for the 
> storage consumed by parts of an incomplete S3 multipart upload.
> When a multipart upload is initiated and one or more parts are uploaded 
> without completing the MPU, the uploaded parts remain as open/incomplete data 
> and should be reflected in Recon's {{multipartOpenKeyBytes}} metric.
> Currently, {{multipartOpenKeyBytes}} can remain unchanged even after a 
> multipart upload part has been successfully written.
> h3. Expected behavior
> For an incomplete multipart upload:
>  # An MPU is initiated for an object.
>  # One or more parts are uploaded successfully.
>  # The MPU is intentionally left incomplete.
>  # Recon's storage distribution API should reflect the replicated storage 
> consumed by the uploaded MPU parts in {{{}multipartOpenKeyBytes{}}}.
>  # Once the corresponding MPU data is cleaned up, {{multipartOpenKeyBytes}} 
> should decrease accordingly.
> For example, if a 16 MiB part is uploaded with RATIS replication factor 3, 
> the corresponding replicated storage contribution should be approximately:
>  
> {{16 MiB × 3 = 50,331,648 bytes}}
> The exact value should account for the existing baseline and the configured 
> replication factor.
> h3. Actual behavior
> After successfully uploading a part to an incomplete MPU, Recon's 
> {{multipartOpenKeyBytes}} does not increase as expected and may continue 
> reporting the previous value.
> This suggests that the storage associated with incomplete MPU parts may not 
> be correctly propagated into Recon's multipart open-key accounting.
> h3. Reproduction scenario
> A minimal reproduction should:
>  # Create a bucket and object.
>  # Initiate a multipart upload.
>  # Upload at least one part.
>  # Do not complete the MPU.
>  # Query Recon's storage distribution information.
>  # Verify the value reported for {{{}multipartOpenKeyBytes{}}}.
>  # Clean up the incomplete MPU/container data.
>  # Query Recon again and verify that the corresponding storage is removed.
>  
> h3.  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to