[
https://issues.apache.org/jira/browse/HDDS-16659?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Attila Doroszlai resolved HDDS-16659.
-------------------------------------
Fix Version/s: 2.3.0
Resolution: Implemented
> Reuse the destination bucket in the S3 CopyObject datastream path
> -----------------------------------------------------------------
>
> Key: HDDS-16659
> URL: https://issues.apache.org/jira/browse/HDDS-16659
> Project: Apache Ozone
> Issue Type: Sub-task
> Reporter: Huang Kuan Hao
> Assignee: Huang Kuan Hao
> Priority: Major
> Labels: pull-request-available
> Fix For: 2.3.0
>
>
> ObjectEndpoint#handlePutRequest retrieves the destination OzoneBucket before
> processing CopyObject. When the copy uses datastream, ObjectEndpoint#copy
> retrieves the same bucket again before calling
> ObjectEndpointStreaming#copyKeyWithStream, adding a redundant InfoBucket RPC.
> Pass the existing OzoneBucket to the copy helper and reuse it for the
> streaming write. This saves one destination bucket metadata RPC for copies
> that enter the datastream path. Retain the initial bucket lookup,
> expected-owner verification, and destination write authorization.
> Regression tests should verify:
> * Datastream copy performs only one destination bucket metadata lookup.
> * The streaming write preserves the copied content, metadata, tags, ETag,
> and LastModified.
> * Existing conditional-write and expected-owner checks are preserved, and
> regular copy continues to work.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]