[SERVER-15631] RangeDeleter destructor does not free DeleteJobStats objects Created: 13/Oct/14 Updated: 03/Mar/15 Resolved: 16/Oct/14 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Internal Code |
| Affects Version/s: | None |
| Fix Version/s: | 2.7.8 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Andrew Morrow (Inactive) | Assignee: | Andrew Morrow (Inactive) |
| Resolution: | Done | Votes: | 0 |
| Labels: | 28qa, address-sanitizer, leak-sanitizer, memory-leak | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Backwards Compatibility: | Fully Compatible |
| Operating System: | ALL |
| Participants: |
| Description |
|
The RangeDeleter destructor walks several internal data structures and deletes all of the objects owned by those data structures. However, the _statsHistory std::deque is not walked, so any DeleteJobStats objects held within the deque are leaked. For normal operations, the RangeDeleter is an immortal singleton, so the impact of this bug is slight, but when a RangeDeleter is used in unit tests, the leak is apparent. |
| Comments |
| Comment by Githook User [ 16/Oct/14 ] |
|
Author: {u'username': u'acmorrow', u'name': u'Andrew Morrow', u'email': u'acm@mongodb.com'}Message: |