[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:
Tested
tested by SERVER-20713 improve unittest coverage of the Repl... Closed
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: SERVER-20658 move cancelled work items from the sleepersQueue to the readyQueue in the ReplicationExecutor
Branch: master
https://github.com/mongodb/mongo/commit/e1dde496ced6fdfa9e4cbc55a9e71084bf01d8c1

Generated at Thu Feb 08 03:54:52 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.