github-actions[bot] commented on code in PR #64165:
URL: https://github.com/apache/doris/pull/64165#discussion_r3366661511
##########
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:
When `scan_filter_profile` is non-null this returns before emitting the
legacy `RuntimeFilterInfo`, but the new `ScanFilterProfile::materialize()` only
uses the collected `runtime_filter_stats` when it can match them to a
`ScanFilterDesc` (`find_runtime_filter_stats()` inside the per-scan-filter
loop). A runtime filter that times out, is disabled, or otherwise never becomes
an appended conjunct will still be collected here, but there is no scan-filter
snapshot for it, so its per-RF wait time/debug/always-true counters disappear
from the query profile. This regresses the existing runtime-filter
observability exactly in the cases where users need to diagnose missing/late
RFs. Please either materialize unmatched `runtime_filter_stats` under
`ScanFilterInfo` or keep the legacy `RuntimeFilterInfo` output for those
filters.
--
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]