Aleksey Plekhanov created IGNITE-16701:
------------------------------------------

             Summary: Calcite engine. Merge join incorrectly works when there 
are more then two matched rows on the right side
                 Key: IGNITE-16701
                 URL: https://issues.apache.org/jira/browse/IGNITE-16701
             Project: Ignite
          Issue Type: Bug
            Reporter: Aleksey Plekhanov
            Assignee: Aleksey Plekhanov


 

Reproducer:

 
{code:java}
executeSql("CREATE TABLE t1(i INT)");
executeSql("CREATE INDEX t1_i ON t1(i)");
executeSql("INSERT INTO t1 VALUES (0)");
executeSql("CREATE TABLE t2(i INT)");
executeSql("CREATE INDEX t2_i ON t2(i)");
executeSql("INSERT INTO t1 VALUES (0), (0), (0)");

assertQuery("SELECT t1.i FROM t1 LEFT JOIN t2 ON t1.i = 
t2.i").returns(0).returns(0).returns(0).check();

assertQuery("SELECT t1.i FROM t1 RIGHT JOIN t2 ON t1.i = 
t2.i").returns(0).returns(0).returns(0).check(); 

assertQuery("SELECT t1.i FROM t1 RIGHT JOIN t2 ON t1.i = 
t2.i").returns(0).returns(0).returns(0).check(); {code}
Queries shold return [0, 0, 0]. But LEFT JOIN returns [0, 0], RIGHT JOIN 
returns [empty], and FULL JOIN returns [0, 0, 0, 0].

 

 



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to