[SERVER-26964] Make FieldPath more efficient Created: 09/Nov/16  Updated: 19/Nov/16  Resolved: 15/Nov/16

Status: Closed
Project: Core Server
Component/s: Aggregation Framework
Affects Version/s: None
Fix Version/s: 3.4.0-rc4

Type: Improvement Priority: Major - P3
Reporter: James Wahlin Assignee: James Wahlin
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
Backwards Compatibility: Fully Compatible
Sprint: Query 2016-11-21
Participants:

 Description   

Profiling of $graphLookup under SERVER-23992 has raised calls to FieldPath::fullPath() as the top consumer of CPU resources. This is due to string concatenation operations which combine field path elements, performed on every call.



 Comments   
Comment by Githook User [ 15/Nov/16 ]

Author:

{u'username': u'jameswahlin', u'name': u'James Wahlin', u'email': u'james.wahlin@10gen.com'}

Message: SERVER-26964 Make FieldPath more efficient
Branch: master
https://github.com/mongodb/mongo/commit/e0b312bbe4f2c50470560b92fbcfbdd3e0471d2f

Comment by James Wahlin [ 15/Nov/16 ]

After finding that targeted improvement of FieldPath::fullPath() for $graphLookup hurts performance in other areas, we decided to proceed with a broader overhaul of the FieldPath class for performance. This ticket will handle this work.

Comment by James Wahlin [ 09/Nov/16 ]

Please note that the fix under this ticket is not meant to be an overhaul of FieldPath and addresses one bottleneck. A follow-up ticket will be entered to do a broader rework of FieldPath post 3.4 release.

Generated at Thu Feb 08 04:13:44 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.