[SERVER-32030] SyncTail::oplogApplication uses a long-running OperationContext (3.2/3.4) Created: 18/Nov/17  Updated: 30/Oct/23  Resolved: 19/Nov/17

Status: Closed
Project: Core Server
Component/s: Replication
Affects Version/s: 3.2.17, 3.4.10
Fix Version/s: 3.2.18, 3.4.11

Type: Improvement Priority: Major - P3
Reporter: Daniel Gottlieb (Inactive) Assignee: Daniel Gottlieb (Inactive)
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Backports
Related
is related to SERVER-31101 WT table not dropped after collection... Closed
Backwards Compatibility: Fully Compatible
Backport Requested:
v3.2
Sprint: Storage 2017-12-04
Participants:

 Description   

Replication runs a background thread for oplogApplication that lives for the duration of the mongod process. In 3.2, that thread creates a single OperationContext and uses it for the entire lifetime.

The same lifetime is also seen in 3.4

I believe that if those OperationContexts are scoped to the main loop, as in master, then they would refresh frequently enough to release recovery unit resources that can impede progress of dropping collections.



 Comments   
Comment by Githook User [ 19/Nov/17 ]

Author:

{'name': 'Daniel Gottlieb', 'username': 'dgottlieb', 'email': 'daniel.gottlieb@mongodb.com'}

Message: SERVER-32030: Divide SyncTail::oplogApplication OperationContext lifetime into smaller chunks.
Branch: v3.2
https://github.com/mongodb/mongo/commit/8d82a4d0fbefa18bb4ed458164989afe6d9793ef

Comment by Githook User [ 19/Nov/17 ]

Author:

{'name': 'Daniel Gottlieb', 'username': 'dgottlieb', 'email': 'daniel.gottlieb@mongodb.com'}

Message: SERVER-32030: Divide SyncTail::oplogApplication OperationContext lifetime into smaller chunks.
Branch: v3.4
https://github.com/mongodb/mongo/commit/63de8580eecdc61bf956ed2b9534a0883c0d0b23

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