[SERVER-83433] Add back the test coverage for running db hash check on replica set that is fsync locked and has replica set endpoint enabled Created: 19/Nov/23  Updated: 05/Feb/24

Status: Backlog
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Task Priority: Major - P3
Reporter: Cheahuychou Mao Assignee: Cheahuychou Mao
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
depends on SERVER-84243 Separate Shard-Role Catalog Cache and... In Progress
depends on SERVER-82588 Move CatalogCacheLoader to be a decor... Closed
Sprint: Cluster Scalability 2023-12-25, Cluster Scalability 2024-1-8, Cluster Scalability 2024-1-22, Cluster Scalability 2024-2-5, Cluster Scalability 2024-2-19
Participants:

 Description   

The db hash check for a ReplSetTest involves running collStats commands against each mongod while it is fsync locked. On a mongod with replica set endpoint enabled, those collStats commands are handled using the router code paths which may trigger a catatlog cache refresh. The router service on mongod currently uses the ShardServerCatalogCacheLoader (SERVER-82588). So when a refresh occurs, it requires doing a noop write which will then deadlock since the mongod is fsync locked. This deadlock should go away after SERVER-82588. For now, SERVER-81968 has temporarily changed the number of nodes in the replica sets in the rs_endpoint/ tests with user collections to 1 to avoid the db hash check. 


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