Huang Kuan Hao created HDDS-16659:
-------------------------------------
Summary: 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
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]