-
Type: Task
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Query Execution
-
Fully Compatible
-
QE 2024-01-22
The "fail" function is used to abort the processing when the value being examined is incompatible with the operation being performed. It doesn't return any value, so there should not be a vectorized counterpart. The vectorizer should translate it using an expression if (valueBlockAny(current_mask, true)) fail(...) else valueBlockNew(Nothing, valueBlockSize(current_mask)) if there is an active mask. The error would be thrown whenever at least one item is supposed to be processed by the fail() instruction.
If there is no active mask, the fail() call can be left as is in the code
- is depended on by
-
SERVER-83323 Add support for block-enabled Operations::Div, Operations::Mult
- Closed
-
SERVER-83324 Add support for block-enabled Operations::Add, Operations::Sub
- Closed
-
SERVER-83329 Add support for block-enabled convert() and mod() function
- Closed
-
SERVER-83331 Add support for block-enabled round() and trunc() function
- Closed