[SERVER-83462] Remove more imprecise InternalExpr predicates in residual filters Created: 20/Nov/23  Updated: 30/Nov/23  Resolved: 30/Nov/23

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: Ian Boros Assignee: Ian Boros
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
Backwards Compatibility: Fully Compatible
Participants:
Linked BF Score: 135

 Description   

SERVER-82570 changed the query planner to remove some InternalExpr predicates in residual filters, and changed the SBE stage builders to unconditionally compile them (rather than to an always true predicate).

It turns out there are some common cases where InternalExpr expressions remain in the tree and get compiled, slowing down some filtering operations. We should make the rewrite more aggressive, to remove the imprecise predicates in more situations.



 Comments   
Comment by Githook User [ 28/Nov/23 ]

Author:

{'name': 'Ian Boros', 'email': 'ian.boros@mongodb.com', 'username': 'borosaurus'}

Message: SERVER-83462 Remove InternalExpr nodes from residual predicates more aggressively
Branch: master
https://github.com/mongodb/mongo/commit/c727e0e0111c6db9de81e816213179506ad03c4b

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