| 1657 | } |
| 1658 | |
| 1659 | static bool HasEffectiveRuntimeFilter(const TPlanNode& node, |
| 1660 | const map<int32_t, set<TPlanNodeId>>& effective_filter_ids_to_node_ids) { |
| 1661 | for (const TRuntimeFilterDesc& f : node.runtime_filters) { |
| 1662 | auto it = effective_filter_ids_to_node_ids.find(f.filter_id); |
| 1663 | if (it != effective_filter_ids_to_node_ids.end() |
| 1664 | && it->second.find(node.node_id) != it->second.end()) { |
| 1665 | return true; |
| 1666 | } |
| 1667 | } |
| 1668 | return false; |
| 1669 | } |
| 1670 | |
| 1671 | static bool GetCardinalityIfComplete(const TPlanNodeExecSummary& node_summary, |
| 1672 | const TPlanNode& plan_node, int64_t* cardinality) { |
no test coverage detected