[SERVER-62354] Improve reference tracker to support incremental updates Created: 04/Jan/22 Updated: 06/Dec/22 Resolved: 04/Oct/22 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Hana Pearlman | Assignee: | Backlog - Query Optimization |
| Resolution: | Won't Do | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Assigned Teams: |
Query Optimization
|
| Sprint: | QO 2022-03-07 |
| Participants: |
| Description |
|
When an ABT is modified during optimization, we currently recompute the dependencies for the entire tree, even for a simple modification. See this example during const eval, where we inline a variable and then we rebuild the variable environment from scratch. We should add the ability to incrementally update the ABT dependencies after a specific change, rather than recomputing the dependencies from scratch. This would make sure the variable environment doesn't go out of sync with the ABT, so we don't have to constantly account for it in our optimizations. |