[SERVER-85800] Block API cellFoldValues_F should process non-boolean values Created: 26/Jan/24  Updated: 30/Jan/24  Resolved: 30/Jan/24

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

Type: Bug 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
Assigned Teams:
Query Execution
Backwards Compatibility: Fully Compatible
Operating System: ALL
Sprint: QE 2024-02-05
Participants:
Linked BF Score: 156

 Description   

Currently cellFoldValues_F has a check that the data to be processed is made of all boolean values. However, the scalar counterpart, traverseF, can return non boolean values (e.g. when it is applied to a non-array value and the lambda returns non-boolean, i.e. Nothing) or handle non boolean values coming from the lambda (that are treated as "false")

e.g.

coll.aggregate([
            { $match: { "time": { $in: [[new Date("2019-09-27T21:14:45.654Z")]] } } }, { $group: { _id: null } }]
        )



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

Author:

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

Message: SERVER-85800 cellFoldValues_F treats non-boolean input values as False (#18459)

GitOrigin-RevId: f1fef74851451d8bb51eff1b033786fe63b37230
Branch: master
https://github.com/mongodb/mongo/commit/7963af36a3aa17af324edcb83ecf6320dfaa6f61

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