mrhhsg opened a new pull request, #70233: URL: https://github.com/apache/doris/pull/70233
## Summary Backport the null-aware mark join correction from #69762 to branch-4.1. - Clear the NULL flag when emitting a no-match sentinel from a reusable probe buffer. - Preserve a NULL probe key for the existing dedicated handler, with its lookup state reset. - Add focused BE unit coverage and a correlated IN/NOT IN SQL regression. ## Problem and fix With an additional join predicate, a no-match sentinel could inherit a NULL flag from an earlier probe row. This could produce NULL instead of the expected FALSE or TRUE for an empty correlated subquery. The sentinel now explicitly clears that flag. The branch-4.1 backport also preserves nullable probe rows so they reach the existing null-key handler. ## Testing - `BUILD_TYPE=ASAN DISABLE_BE_JAVA_EXTENSIONS=OFF ./build.sh --be --fe -j 48` (includes FE checkstyle): passed. - `BUILD_TYPE=ASAN ./run-be-ut.sh --run --filter='JoinHashTableTest.*' -j 48`: 2 tests passed. - `./run-regression-test.sh --conf regression-test/conf/regression-conf.groovy --run -d nereids_syntax_p0 -s mark_join_correlated_empty`: 1 suite passed on an isolated ASAN FE/BE cluster. - `build-support/clang-format.sh`, `build-support/check-format.sh`, and `git diff --check`: passed. -- 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]
