Huang Kuan Hao created HDDS-16658:
-------------------------------------
Summary: Reuse source key details when opening the input stream in
S3 CopyObject
Key: HDDS-16658
URL: https://issues.apache.org/jira/browse/HDDS-16658
Project: Apache Ozone
Issue Type: Sub-task
Reporter: Huang Kuan Hao
Assignee: Huang Kuan Hao
ObjectEndpoint#copyObject retrieves the source key details to evaluate copy
conditions and obtain the object's size, metadata, tags, and ETag. When copying
the content, it then calls ClientProtocol#getKey, which issues another
GetKeyInfo RPC for the same source key. Open the input stream through
OzoneKeyDetails#getContent instead, reusing the key information already
fetched. This follows the approach used by GetObject and UploadPartCopy and
saves one source metadata RPC on the normal content-copy path. Retain the
existing GetObject action scope, copy-condition checks, and input-stream retry
handling.
Regression tests should verify:
* Source key details are fetched once, without a separate getKey call, for
both regular and datastream copies.
* Copied content, metadata, tags, ETag, and LastModified remain correct.
* Existing source and destination conditions and expected-owner checks are
preserved.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]