[SERVER-12494] Implement findRightSiblingByName() directly in mutablebson::Element Created: 27/Jan/14 Updated: 11/Jul/16 Resolved: 29/Jan/14 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 2.5.5 |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Andy Schwerin | Assignee: | Andrew Morrow (Inactive) |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Backwards Compatibility: | Fully Compatible |
| Participants: |
| Description |
|
Even in update benchmarks involving very simple documents, a fair amount of time is spent in mutablebson::Element::operator[](const StringData&). Right now, this is implemented in terms of implementation-agnostic algorithms, that lead to high costs from copies. Since even algorithmic improvements to this hot behavior will involve adding this method to Element anyways, we should do it now, and see if simple copy elisions that result improve performance. |
| Comments |
| Comment by Githook User [ 29/Jan/14 ] |
|
Author: {u'username': u'acmorrow', u'name': u'Andrew Morrow', u'email': u'acm@10gen.com'}Message: |
| Comment by Andrew Morrow (Inactive) [ 27/Jan/14 ] |
|
We need to do this for the numeric operator[] as well. |