[SERVER-79600] Simplify the usage of the Recoverable Critical Section, clearing the filtering metadata in all nodes when blocking both reads and writes Created: 02/Aug/23  Updated: 26/Oct/23

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

Type: Task Priority: Major - P3
Reporter: Sergi Mateo Bellido Assignee: Backlog - Catalog and Routing
Resolution: Unresolved Votes: 0
Labels: oldshardingemea, shardingemea-qw
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Assigned Teams:
Catalog and Routing
Participants:
Story Points: 2

 Description   

The Recoverable Critical Section is currently clearing the filtering metadata in secondary nodes, leaving the responsibility of properly handling the filtering metadata on the primary node to the caller. This is error prone, see for example SERVER-78496.

The goal of this ticket is to make this utility safer, clearing the filtering metadata on all nodes as part of blocking reads and writes in contrast to doing it when releasing the Critical Section only in secondary nodes.

Whoever takes this ticket should also think about multiversion implications, whether it would be fine to remove the existing code and add the new one or we should keep both for the next versions.


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