[SERVER-82978] [CQF] jstests/cqf/analyze/ce_sample_rate.js failed with parameterization enabled Created: 08/Nov/23 Updated: 21/Nov/23 Resolved: 21/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: | Jess Balint | Assignee: | Ben Shteinfeld |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Assigned Teams: |
Query Optimization
|
||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||
| Sprint: | QO 2023-11-27 | ||||||||
| Participants: | |||||||||
| Comments |
| Comment by Githook User [ 21/Nov/23 ] |
|
Author: {'name': 'Ben Shteinfeld', 'email': 'ben.shteinfeld@mongodb.com', 'username': 'bshteinfeld'}Message: |
| Comment by Ben Shteinfeld [ 17/Nov/23 ] |
|
Abandoned https://github.com/10gen/mongo/pull/16905 in favor of https://github.com/10gen/mongo/pull/17022. See PRs themselves for details. |
| Comment by Ben Shteinfeld [ 10/Nov/23 ] |
|
After Fixing this will require us to design a mechanism for CE to get access to constants before parameterization. One way we could do this is add another child of FunctionCall[getParam] to hold this constant. We will need to consider how this interacts with interval simplifications which generate expressions as bounds. Since the CE module is estimating cardinality for a particular value of the parameter, we could perform replace the FunctionCall[getParam] with the constant and perform constant folding to get a constant for the bound and proceed with CE as usual. I suspect we'll need to do this for both histogram and sampling based CE. |