[SBE] Revisit expected semantics of non-boolean values for EPrimBinary and/or

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Query Execution
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None

      The expected behavior around non-boolean values for EPrimBinary and/or is unclear. Though higher-level logic can enforce that the expected values are boolean (for instance, by building an expression which type checks before calling into binary and/or), it's not clear what the behavior of the instructions themselves should be. For example, suppose we are executing EPrimBinary::and(17, true). Should we: 

      • Treat 17 as truthy and evaluate the constant true?
      • Treat 17 as a non-bool value and return nothing?
      • Expect undefined behavior? 

      This ticket tracks the work to not only decide on the "expected" semantics, but also to implement them.

            Assignee:
            [DO NOT USE] Backlog - Query Execution
            Reporter:
            Mihai Andrei
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated: