[SERVER-82347] Remove unnecessary MatchExpression copying from the BitsetTree converter Created: 20/Oct/23 Updated: 29/Oct/23 Resolved: 20/Oct/23 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 7.2.0-rc0 |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Alexander Ignatyev | Assignee: | Alexander Ignatyev |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||
| Participants: | |||||||||||||
| Linked BF Score: | 7 | ||||||||||||
| Description |
|
The Boolean simplifier stores expressions as std::unique_ptr<MatchExpression>, it does not really need to own the expressions, if we replace the unique pointer by a raw pointer we can avoid unnecessary copying of MatchExpressions. |
| Comments |
| Comment by Githook User [ 20/Oct/23 ] |
|
Author: {'name': 'Alexander Ignatyev', 'email': 'alexander.ignatyev@mongodb.com', 'username': 'aligusnet'}Message: Replace the unique pointer in ExpressionBitInfo by a raw pointer to avoid unnecessary copying of MatchExpressions when restoring the expressions from their bitset representation. |