morningman opened a new pull request, #68401:
URL: https://github.com/apache/doris/pull/68401

   ### What problem does this PR solve?
   
   This backports #68308 to branch-4.1.4.
   
   Logical OR could preserve non-canonical nested Boolean payloads for nullable 
inputs. A NULL operand combined with TRUE could therefore expose a non-NULL 
Boolean byte other than 1, and downstream expressions such as multi-branch CASE 
WHEN could use it as an invalid branch index and crash the BE.
   
   ### What changed
   
   Canonicalize logical OR results to 0 or 1 in both the generic logical 
function and the VCompoundPred fast path while preserving SQL three-valued NULL 
semantics.
   
   The backport also includes the upstream BE unit coverage and SQL regression 
coverage for nullable payloads, CASE WHEN, short-circuit settings, and the 
TRUE/FALSE/NULL OR truth table.
   
   ### Test
   
   - git diff --check
   - The backported patch is identical to the merged patch from #68308 
(matching stable patch-id).
   - BE unit and regression tests were not run locally because this isolated 
backport worktree has no BE unit-test build artifacts.
   
   ### Release note
   
   Fix logical OR to return canonical Boolean values for nullable inputs.
   


-- 
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]

Reply via email to