nsivarajan commented on PR #61329:
URL: https://github.com/apache/doris/pull/61329#issuecomment-4062281176

   Thanks @gavinchou for the suggestion. I agree with the consistency concern — 
I've re-architected the FE to remove the separate `OSSStorageVault` class and 
instead reuse `S3StorageVault`, routing OSS as a provider variant through 
`S3Properties.java`. This keeps the FE consistent with the existing pattern. I 
will update the PR with a commit soon.
   
   On the BE side, the separation is handled cleanly via the `provider` field. 
In cloud/decoupled mode, storage vaults with `provider=OSS` route to the native 
Alibaba Cloud OSS SDK, while all other usage paths (non-cloud mode, external 
tables, `TS3StorageParam`, etc.) continue to use OSS via the S3-compatible AWS 
SDK — unchanged for now (I will update this later if needed).
   
   ```cpp
   // cloud_meta_mgr.cpp — cloud/decoupled mode vault loading
   if (obj_store.provider() == ObjectStoreInfoPB::OSS)
       vault_infos->emplace_back(id, OSSConf::get_oss_conf(obj_store), 
path_format);  // native OSS SDK
   else
       vault_infos->emplace_back(id, S3Conf::get_s3_conf(obj_store), 
path_format);    // AWS SDK
       
   ```
   
   The native OSS SDK path is required for cloud mode because it supports 
Alibaba-specific credential providers — ECS instance profiles, STS 
`AssumeRole`, and RRSA/OIDC — which are not available through the S3-compatible 
API.
   
   The OSS file reader, writer, and recycler accessor are implemented as 
separate components backed by `AlibabaCloud::OSS::OssClient`, while all other 
providers (S3, COS, OBS, GCP, etc.) continue through the existing AWS SDK path 
unchanged.
   
   Please let me know if this aligns with the pattern you intended so I can 
proceed with the changes.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to