BiteTheDDDDt commented on code in PR #64165:
URL: https://github.com/apache/doris/pull/64165#discussion_r3366682600
##########
be/src/exec/runtime_filter/runtime_filter_consumer_helper.cpp:
##########
@@ -129,8 +130,21 @@ Status
RuntimeFilterConsumerHelper::try_append_late_arrival_runtime_filter(
return Status::OK();
}
-void RuntimeFilterConsumerHelper::collect_realtime_profile(
- RuntimeProfile* parent_operator_profile) {
+void RuntimeFilterConsumerHelper::collect_realtime_profile(RuntimeProfile*
parent_operator_profile,
+ ScanFilterProfile*
scan_filter_profile) {
+ if (_consumers.empty()) {
+ return;
+ }
+
+ if (scan_filter_profile != nullptr) {
+ scan_filter_profile->set_runtime_filter_acquire_time(
+ _acquire_runtime_filter_timer->value());
+ for (const auto& consumer : _consumers) {
+ consumer->collect_scan_filter_profile(scan_filter_profile);
+ }
Review Comment:
Fixed in the latest force-push.
The new scan-filter path now preserves observability for RFs that never
become scan predicates:
- `ScanRuntimeFilterProfileStats` carries the legacy RF input/filter row
counters in addition to wait/always-true/debug data.
- `ScanFilterProfile::set_runtime_filter_profile_stats()` creates a
synthetic `kind=RUNTIME_FILTER` scan-filter desc when no scan-filter desc
exists for that `runtime_filter_id`.
- The synthetic child is materialized under `ScanFilterInfo` with
`Stages=NotApplied`; it still exposes RF wait time, always-true rows, debug
string, and RF input/filter rows when present.
- Matched RFs keep using their real per-stage scan-filter row counters, so
this does not duplicate row accounting for applied RFs.
Validation:
- `./build.sh --be`
- `git diff --cached --check`
--
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]