[SERVER-41371] Unify NamespaceNotFound handling when calling applyOperation_inlock Created: 29/May/19  Updated: 13/Apr/23

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

Type: Task Priority: Major - P3
Reporter: Siyuan Zhou Assignee: Backlog - Replication Team
Resolution: Unresolved Votes: 0
Labels: former-quick-wins, quick_wins
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
is related to SERVER-73661 Improve applyOperation_inlock() API. Open
is related to SERVER-34319 unify exception and error status hand... Closed
Assigned Teams:
Replication
Participants:

 Description   

applyOperation_inlock() needs the collection lock held before calling the function, which may throw a NamespaceNotFound error. As a result, all callers have to handle NamespaceNotFound correctly for idempotency reasons. We should unify the logic.



 Comments   
Comment by Ratika Gandhi [ 18/Jul/19 ]

jesse@mongodb.com, please consider this ticket while designing 'address tech debt in oplog application path'. 

Comment by Matthew Russotto [ 30/May/19 ]

Note we currently have, in sync_tail, a parameter called allowNamespaceNotFoundErrorsOnCrudOps, which is used sometimes to handle treatment of NamespaceNotFound. We should either get rid of this parameter or make this parameter control all treatment of NamespaceNotFound as part of this ticket.

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