disagg: Fix deployed on kingsoft ks3#10599
Conversation
Signed-off-by: JaySon-Huang <tshent@qq.com>
Signed-off-by: JaySon-Huang <tshent@qq.com>
There was a problem hiding this comment.
Pull request overview
This PR adds support for Kingsoft Cloud KS3 object storage and improves the logic for handling unknown cloud vendors with respect to virtual addressing requirements. The changes enable TiFlash to properly detect and configure Kingsoft Cloud endpoints while maintaining backward compatibility for other S3-compatible services.
Key changes:
- Added
KingsoftCloudvendor enum and renamed/reorganizedUnknownvendor types to distinguish between services requiring virtual addressing (Unknown) and those not requiring it (UnknownFixAddress) - Updated endpoint parsing regex to recognize Kingsoft Cloud endpoint patterns (ks3--internal.ksyuncs.com and ks3-.ksyuncs.com)
- Enhanced port-based logic to better determine when unknown vendors need virtual addressing (default ports) versus fixed addressing (custom ports)
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| dbms/src/Storages/S3/S3Common.h | Added KingsoftCloud enum value and split Unknown into UnknownFixAddress and Unknown to differentiate virtual addressing requirements |
| dbms/src/Storages/S3/S3Common.cpp | Updated regex pattern to parse Kingsoft Cloud endpoints, refined vendor detection logic with port-based checks for unknown vendors |
| dbms/src/Storages/S3/Credentials.cpp | Added credential provider handling for KingsoftCloud (falls through to AWS providers) and properly handles both Unknown variants |
| dbms/src/Storages/S3/tests/gtest_s3common.cpp | Added comprehensive test cases for Kingsoft Cloud endpoints (internal/external) and expanded tests for unknown vendor scenarios with various port configurations |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: JinheLin, Lloyd-Pottiger The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
[LGTM Timeline notifier]Timeline:
|
|
/cherry-pick release-nextgen-20251011 |
|
@JaySon-Huang: new pull request created to branch DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the ti-community-infra/tichi repository. |
ref #10569, close #10598 * Support parsing kingsoft ks3 endpoint as `CloudVendor::KingsoftCloud` * Improve the compatibility of deployed under unknown cloud vendor that need virtual addressing Signed-off-by: JaySon-Huang <tshent@qq.com> Co-authored-by: JaySon-Huang <tshent@qq.com> Co-authored-by: JaySon <tshent@qq.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
ref pingcap#10569, close pingcap#10598 * Support parsing kingsoft ks3 endpoint as `CloudVendor::KingsoftCloud` * Improve the compatibility of deployed under unknown cloud vendor that need virtual addressing Signed-off-by: JaySon-Huang <tshent@qq.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
What problem does this PR solve?
Issue Number: close #10598, ref #10569
Problem Summary:
What is changed and how it works?
Check List
Tests
Side effects
Documentation
Release note