Join probe time includes the time of sending result to channel and getting avaliable empty chunk, which makes the probe time distorted #52222
Closed
Description
Bug Report
Please answer these questions before submitting your issue. Thanks!
1. Minimal reproduce step (Required)
In explain analyze, if a here is join operator, it will record probe_time
which indicates how much times does the probe process takes.
build_hash_table:{total:4.64s, fetch:4.64s, build:0s}, probe:{concurrency:5, total:1m49.5s, max:21.9s, probe:18.9s, fetch:1m30.6s}
However, this probe time actually includes the time of sending results to channel and getting avaliable emtpy chunk
Lines 1074 to 1080 in 8d9e67b
So if the parent operator of join is slow(like high cardinality aggregation), the probe time will be very high, which is distorted and misleading.