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]

Reply via email to