suxiaogang223 opened a new pull request, #63476:
URL: https://github.com/apache/doris/pull/63476
### What problem does this PR solve?
Issue Number: close #DORIS-25595
Related PR: #59217
Problem Summary:
Iceberg tables written through Hadoop catalog can store data file paths
without a URI scheme, for example `/hadoop_catalog/db/tbl/data/file.parquet`.
Doris should normalize these paths with the catalog `fs.defaultFS` before
creating scan ranges.
The Iceberg `LocationPath` cache path kept the original blank schema after
normalization and did not derive the schema from the normalized URI in the
cached fallback path. As a result, partitioned table planning could fail with
`Invalid location, missing authority`, and non-partitioned scans could pass an
invalid file type or fs name to BE.
This patch derives the schema from the normalized URI when the original path
has no scheme and keeps cached `LocationPath` creation consistent with full
parsing.
### Release note
Fix Iceberg Hadoop catalog queries whose data file paths rely on
`fs.defaultFS`.
### Check List (For Author)
- Test <!-- At least one of them must be included. -->
- [ ] Regression test
- [x] Unit Test
- `./run-fe-ut.sh --run
org.apache.doris.common.util.LocationPathTest`
- [ ] Manual test (add detailed scripts or steps below)
- [ ] No need to test or manual test. Explain why:
- [ ] This is a refactor/code format and no logic has been changed.
- [ ] Previous test can cover this change.
- [ ] No code files have been changed.
- [ ] Other reason <!-- Add your reason? -->
- Behavior changed:
- [ ] No.
- [x] Yes. HDFS paths without URI scheme are normalized with
`fs.defaultFS` consistently when using cached `LocationPath` creation.
- Does this need documentation?
- [x] No.
- [ ] Yes. <!-- Add document PR link here. eg:
https://github.com/apache/doris-website/pull/1214 -->
### Check List (For Reviewer who merge this PR)
- [ ] Confirm the release note
- [ ] Confirm test cases
- [ ] Confirm document
- [ ] Add branch pick label <!-- Add branch pick label that this PR should
merge into -->
--
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]