-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Closed
Labels
bugSomething isn't workingSomething isn't working
Description
Describe the bug
A clear and concise description of what the bug is.
The join result is wrong.
To Reproduce
Steps to reproduce the behavior:
#[tokio::test]
async fn equijoin_left_and_condition_from_right() -> Result<()> {
let ctx = create_join_context("t1_id", "t2_id")?;
let sql =
"SELECT t1_id, t1_name, t2_name FROM t1 LEFT JOIN t2 ON t1_id = t2_id AND t2_name >= 'y' ORDER BY t1_id";
let res = ctx.create_logical_plan(sql);
assert!(res.is_ok());
let actual = execute_to_batches(&ctx, sql).await;
let expected = vec![
"+-------+---------+---------+",
"| t1_id | t1_name | t2_name |",
"+-------+---------+---------+",
"| 11 | a | z |",
"| 22 | b | y |",
"| 33 | c | |",
"| 44 | d | |",
"+-------+---------+---------+",
];
assert_batches_eq!(expected, &actual);
Ok(())
}
Run this test with PartitionMode:CollectLeft, the test will be failed.
Expected behavior
A clear and concise description of what you expected to happen.
Additional context
Add any other context about the problem here.
doki23
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working