mrhhsg opened a new pull request, #70231: URL: https://github.com/apache/doris/pull/70231
## Summary Backport #63767 to branch-4.1. For a null-aware mark anti join with additional conjuncts, the hash lookup could advance past a NULL probe key before the caller handled that row. This could omit rows from correlated `NOT IN` queries combined with `OR`. Preserve the current probe row and reset the build cursor and null-key selection state so the caller computes its mark correctly. ## Changes - Keep the probe index on a NULL-key row in `JoinHashTable::_find_null_aware_with_other_conjuncts_impl` and clear its unused build lookup state. - Enable existing correlated `NOT IN` cases and add nullable probe/build-key regression coverage with expected results. - Retain the branch-4.1 compile-check include in the affected header. ## Tests - [x] `BUILD_TYPE=ASAN DISABLE_BE_JAVA_EXTENSIONS=OFF ./build.sh --be --fe` - [x] `./run-regression-test.sh --conf regression-test/conf/regression-conf.groovy --run -d correctness -s test_subquery_in_disjunction` (1 suite, 0 failures) - [x] `build-support/clang-format.sh` and `build-support/check-format.sh` - [x] `git diff origin/branch-4.1...HEAD --check` ## Release note Fix incorrect results for correlated `NOT IN` subqueries combined with disjunctions. -- 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]
