andygrove commented on PR #22914: URL: https://github.com/apache/datafusion/pull/22914#issuecomment-6218913069
Heads up: I opened #26415, which reimplements this approach against current `main`. The trial merge of this branch conflicted in several files, because `main` has since gained null-aware `RightAnti`, `valid_keys` NULL handling, a cached key comparator, and other hash join changes. Rather than resolve those conflicts, I wrote a smaller version directly on `main` and kept the design from this PR: - first-match probing (`FirstMatchProbe`) that walks hash chains one link per round, for the `HashMap` case - a single bucket lookup per probe row for `ArrayMap` - the expanded semi/anti benchmark from this PR, which I credited, and a `Co-authored-by` trailer on the commit On `main`, the benchmarks come out 20–88% faster, with the largest gains in the high-fanout cases. This was not meant to take over your work. If you'd rather rebase and land #22914, I'm happy to close #26415. Or if it's useful, feel free to take anything from it. Either way, I'd welcome your review of #26415, since you know this code best. -- 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: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
