Skip to content

[refactor](fe) Separate filesystem routing validation and fallback hooks - #69550

Closed
sollhui wants to merge 1 commit into
apache:masterfrom
sollhui:refactor/filesystem-routing-hooks
Closed

sollhui wants to merge 1 commit into
apache:masterfrom
sollhui:refactor/filesystem-routing-hooks

Conversation

@sollhui

@sollhui sollhui commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

Withdrawn

This draft is closed following a scope review of #68540. Native GCP IAM does not require the proposed validateProperties() and fallbackProviders() public routing hooks.

#68540 was updated in commit 0d4255d168e to use the existing filesystem SPI: GCS recognition and S3/MinIO matching exclusions stay in the relevant plugins, while credential conflicts are rejected during property binding. The generic filesystem manager retains its existing routing behavior.

#69549 remains the independent resource/vault ALTER prerequisite. This PR is no longer a dependency of #68540 and should not be merged.

### What problem does this PR solve?

Related PR: apache#68540

Problem Summary: Filesystem providers that overlap with a generic provider need
an explicit fallback relationship, and provider-owned invalid properties must
not disappear when another provider is selected. Add two default SPI hooks,
apply them to primary/all/direct binding, and retain explicit filesystem flags
and existing ordering. This prerequisite contains no GCP authentication or
protocol changes. Bump the filesystem plugin API from 1.0 to 2.0.

### Release note

Filesystem plugins can validate owned properties before routing and declare
heuristic fallback providers. Rebuild plugins against filesystem API 2.0.

### Check List (For Author)

- Test: FE Core/SPI Checkstyle, Java parsing, and git diff --check passed. Added provider-order,
  explicit-selection, fallback and validation tests. Standard FE UT could not
  reach test execution because the configured protoc executable was unavailable; unit tests were not executed.
- Behavior changed: Existing providers retain their default behavior; providers
  can opt into validation and fallback hooks.
- Does this need documentation: Yes, filesystem README updated.
@hello-stephen

Copy link
Copy Markdown
Contributor

Thank you for your contribution to Apache Doris.
Don't know what should be done next? See How to process your PR.

Please clearly describe your PR:

  1. What problem was fixed (it's best to include specific error reporting information). How it was fixed.
  2. Which behaviors were modified. What was the previous behavior, what is it now, why was it modified, and what possible impacts might there be.
  3. What features were added. Why was this function added?
  4. Which code was refactored and why was this part of the code refactored?
  5. Which functions were optimized and what is the difference before and after the optimization?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants