mingmwang opened a new issue, #4230: URL: https://github.com/apache/arrow-datafusion/issues/4230
**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. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: github-unsubscr...@arrow.apache.org.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org