[SERVER-83327] Extend vectorizer to handle "fail" function Created: 16/Nov/23  Updated: 18/Jan/24  Resolved: 18/Jan/24

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 7.3.0-rc0

Type: Task Priority: Major - P3
Reporter: Alberto Massari Assignee: Alberto Massari
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
is depended on by SERVER-83329 Add support for block-enabled convert... Open
is depended on by SERVER-83331 Add support for block-enabled round()... In Code Review
is depended on by SERVER-83323 Add support for block-enabled Operati... Closed
is depended on by SERVER-83324 Add support for block-enabled Operati... Closed
Assigned Teams:
Query Execution
Backwards Compatibility: Fully Compatible
Sprint: QE 2024-01-22
Participants:

 Description   

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



 Comments   
Comment by Githook User [ 18/Jan/24 ]

Author:

{'name': 'Alberto Massari', 'email': 'alberto.massari@mongodb.com', 'username': 'albymassari'}

Message: SERVER-83327 Support fail() in vectorized operations (#18087)

GitOrigin-RevId: cf6cd32ff0251c25541b17cf01afc2c3a7abcca8
Branch: master
https://github.com/mongodb/mongo/commit/aff312e24301c335889ca76ff534cf3737d0dd63

Generated at Thu Feb 08 06:51:52 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.