bobhan1 opened a new pull request, #67335:
URL: https://github.com/apache/doris/pull/67335
### What problem does this PR solve?
Issue Number: None
Related PR: #67293
Problem Summary:
`CachedRemoteFileReader::prefetch_range()` submits fire-and-forget dry-run
tasks. A running task keeps the cached reader and its underlying
`HdfsFileReader` alive, but it does not keep the query `RuntimeProfile` alive.
Because `HdfsFileReader` stored raw pointers to query-profile timers and
counters, a delayed prefetch read could update them after the query profile had
been destroyed and trigger a use-after-free.
Remove the query `RuntimeProfile` dependency and HDFS-specific query-profile
timers and counters from `HdfsFileReader`. This also removes the now-unused
profile passthrough from `HdfsFileSystem` and updates all affected call sites.
Generic file-reader and file-cache statistics plus process-wide HDFS bvars
remain unchanged; HDFS reads and cache behavior are unchanged.
The forward-port conflict in `hdfs_file_reader.cpp` was resolved by
preserving master's WorkloadGroup/ResourceContext includes and master's removal
of the old `compile_check_begin/end` pair while applying #67293's
profile-removal semantics.
### Release note
None
### Check List (For Author)
- Test
- [ ] Regression test
- [ ] Unit Test
- [x] Manual test
- [x] `build-support/clang-format.sh`
- [x] `build-support/check-format.sh`
- [x] `build-support/check-build-hygiene.sh`
- [x] `git diff --check upstream/master...HEAD`
- [ ] `./build.sh --be -j100` with the existing Release build type
(running)
- [ ] No need to test or manual test
- Behavior changed:
- [ ] No
- [x] Yes. Query profiles no longer expose the HDFS-specific `HdfsIO`
timer and HDFS read-statistics counters. HDFS reads and file-cache behavior are
unchanged.
- Does this need documentation?
- [x] No
- [ ] Yes
### Check List (For Reviewer who merge this PR)
- [ ] Confirm the release note
- [ ] Confirm test cases
- [ ] Confirm document
- [ ] Add branch pick label
--
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]