[SERVER-20658] move cancelled work items from the sleepersQueue to the readyQueue in the ReplicationExecutor Created: 28/Sep/15 Updated: 07/Oct/15 Resolved: 01/Oct/15 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Replication |
| Affects Version/s: | 3.1.8 |
| Fix Version/s: | 3.1.9 |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Matt Dannenberg | Assignee: | Matt Dannenberg |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||
| Sprint: | RPL A (10/09/15) | ||||||||
| Participants: | |||||||||
| Description |
|
Currently, the primary of a three node PV1 replica set can spend 20% of its time iterating over items in the sleepersQueue. This has rendered PV1 unusable for the purposes of CSRS. Most of the items in the sleepersQueue are cancelled callbacks concerning elections. Circumventing the problem, by scanning the queue from back to front on inserts, eliminates the performance impact of this, but is not a suitable solution as it does not alleviate the memory overhead. |
| Comments |
| Comment by Githook User [ 01/Oct/15 ] |
|
Author: {u'username': u'dannenberg', u'name': u'matt dannenberg', u'email': u'matt.dannenberg@10gen.com'}Message: |