[SERVER-74555] Re-introduce majority commit point advancement notification mechanism and use for change streams Created: 02/Mar/23  Updated: 29/Oct/23  Resolved: 21/Apr/23

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 7.0.0-rc0, 7.1.0-rc0

Type: Improvement Priority: Major - P3
Reporter: David Storch Assignee: Denis Grebennicov
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Backports
Depends
is depended on by SERVER-74580 Complete TODO listed in SERVER-69959 Closed
Gantt Dependency
has to be done after SERVER-74611 Have WaitForMajorityService provide a... Closed
Problem/Incident
Related
is related to SERVER-74526 Change stream opened against a second... Closed
is related to SERVER-69959 Introduce majority committed point ad... Closed
Assigned Teams:
Query Execution
Backwards Compatibility: Fully Compatible
Backport Requested:
v7.0
Sprint: QE 2023-04-03, QE 2023-04-17, QE 2023-05-01
Participants:
Linked BF Score: 35

 Description   

An optimization to only wake up a tailable + awaitData cursor when the majority commit point advances (when reading only majority committed data) was originally introduced in SERVER-69959. However, in SERVER-74526 we discovered that this change did not work correctly for $changeStream cursors opened against secondary nodes; rather than blocking, the change stream thread would wake up repeatedly and spin with high CPU utilization.

The work for this ticket is to continue investigating the reason for this high CPU utilization on secondaries. Once we understand the problem better, we should reimplement SERVER-69959 in such a way that is not subject to the bug from SERVER-74526.



 Comments   
Comment by Githook User [ 24/Apr/23 ]

Author:

{'name': 'Denis Grebennicov', 'email': 'denis.grebennicov@mongodb.com', 'username': 'denis631'}

Message: SERVER-74555 Re-introduce majority commit point advancement notification mechanism and use for change streams
Branch: v7.0
https://github.com/mongodb/mongo/commit/07efe95e998e3f8305c4ec215761e0ec7b9e8012

Comment by Githook User [ 21/Apr/23 ]

Author:

{'name': 'Denis Grebennicov', 'email': 'denis.grebennicov@mongodb.com', 'username': 'denis631'}

Message: SERVER-74555 Re-introduce majority commit point advancement notification mechanism and use for change streams
Branch: master
https://github.com/mongodb/mongo/commit/0234b567d9bf6dad86d59127f23ef629b4eaa6cd

Comment by Kyle Suarez [ 07/Mar/23 ]

sebastien.mendez@mongodb.com, sending this to your team to discuss re-scheduling this work. CC bernard.gorman@mongodb.com, denis.grebennicov@mongodb.com

Generated at Thu Feb 08 06:27:47 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.