Zhen Wang created SPARK-48839:
---------------------------------

             Summary: Inject Runtime Filter for multi-level join with function 
condition
                 Key: SPARK-48839
                 URL: https://issues.apache.org/jira/browse/SPARK-48839
             Project: Spark
          Issue Type: Improvement
          Components: SQL
    Affects Versions: 3.5.1, 4.0.0
            Reporter: Zhen Wang


InjectRuntimeFilter is effective when there is a single join with function 
condition, but it will not be effective when there are multiple joins。

 

Add test sqls in `InjectRuntimeFilterSuite.test("Runtime bloom filter join: two 
joins")` to reproduce:
{code:java}
-- bf1 as creation side and inject runtime filter for bf3.
select * from bf1 join bf3 on bf3.c3 = if(bf1.c1 < 5, 5, bf1.c1) where bf1.a1 = 
5

-- bf1 will not inject runtime filter for bf3.
select * from bf1 join bf2 on bf1.c1 = bf2.c2 join bf3 on bf3.c3 = if(bf1.c1 < 
5, 5, bf1.c1) where bf1.a1 = 5{code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to