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

ASF GitHub Bot updated HDDS-15925:
----------------------------------
    Labels: pull-request-available  (was: )

> OFS getFileStatus: client-side bucket layout cache to skip redundant 
> InfoBucket RPC
> -----------------------------------------------------------------------------------
>
>                 Key: HDDS-15925
>                 URL: https://issues.apache.org/jira/browse/HDDS-15925
>             Project: Apache Ozone
>          Issue Type: Improvement
>            Reporter: Wei-Chiu Chuang
>            Assignee: Wei-Chiu Chuang
>            Priority: Major
>              Labels: pull-request-available
>
> h2. Motivation
> Rooted OFS {{getFileStatus}} currently performs a separate {{getBucketInfo}} 
> (InfoBucket) RPC before calling OM {{GetFileStatus}} for most key paths. This 
> doubles client→OM traffic for workloads that call {{getFileStatus}} 
> frequently (for example Hive stats autogather on {{ofs://}}).
> h2. Approach (client-side)
> * Cache successful bucket layout validation per {{(volume, bucket)}} in 
> {{BasicRootedOzoneClientAdapterImpl}}.
> * First {{getFileStatus}} on a bucket may still fetch bucket details to 
> validate layout (including link-bucket resolution and OBJECT_STORE rejection).
> * After cache warm-up, call {{proxy.getOzoneFileStatus(..., headOp)}} 
> directly without {{getBucket()}} on steady-state paths.
> * Preserve snapshot indicator paths, link-bucket layout validation, 
> OBJECT_STORE layout rejection, and {{headOp}} propagation.
> h2. Relationship to HDDS-11232
> This is *not* the HDDS-11232 approach (no combined OM response / server-side 
> merge of bucket info with file status). It is a separate *client-side* 
> optimization for the same RPC-reduction theme. It does not close HDDS-11232.
> h2. Pull request
> https://github.com/apache/ozone/pull/10792
> h2. Testing
> * Integration: {{testGetFileStatusUsesSingleOmRpcAfterCacheWarm}} and related 
> layout/error cases in {{AbstractRootedOzoneFileSystemTest}}
> * Unit: {{TestBasicRootedOzoneClientAdapterHeadOp}} updated for direct 
> {{getOzoneFileStatus}} path



--
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