MCPcopy Create free account
hub / github.com/LadybugDB/ladybug / visitHashJoin

Method visitHashJoin

src/optimizer/acc_hash_join_optimizer.cpp:309–324  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

307}
308
309void HashJoinSIPOptimizer::visitHashJoin(LogicalOperator* op) {
310 auto& hashJoin = op->cast<LogicalHashJoin>();
311 if (LogicalOperatorUtils::isAccHashJoin(hashJoin)) {
312 return;
313 }
314 if (hashJoin.getSIPInfo().position == SemiMaskPosition::PROHIBIT) {
315 return;
316 }
317 if (tryBuildToProbeHJSIP(op)) { // Try build to probe SIP first.
318 return;
319 }
320 if (hashJoin.getSIPInfo().position == SemiMaskPosition::PROHIBIT_PROBE_TO_BUILD) {
321 return;
322 }
323 tryProbeToBuildHJSIP(op);
324}
325
326// TODO(Xiyang): we don't apply SIP from build to probe.
327void HashJoinSIPOptimizer::visitIntersect(LogicalOperator* op) {

Callers

nothing calls this directly

Calls 3

tryBuildToProbeHJSIPFunction · 0.85
tryProbeToBuildHJSIPFunction · 0.85
getSIPInfoMethod · 0.45

Tested by

no test coverage detected