[SERVER-57128] Router's retry of successful DDL must not spawn a new coordinator Created: 21/May/21  Updated: 06/Dec/22  Resolved: 26/May/21

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

Type: Bug Priority: Major - P3
Reporter: Pierlauro Sciarelli Assignee: [DO NOT USE] Backlog - Sharding EMEA
Resolution: Won't Fix Votes: 0
Labels: PM-1965-Milestone-2
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
related to SERVER-57271 Complete TODO listed in SERVER-57128 Closed
Assigned Teams:
Sharding EMEA
Operating System: ALL
Participants:

 Description   

Currently, it is possible to end up in the following scenario:

  • Client issues a DDL operation
  • Mongos forwards the DDL operation to the primary shard
  • The primary shard gets killed right after the DDL suceeds (the coordinator document has been removed) BUT before replying to the mongos
  • The mongos retry targets the new primary: a new coordinator is instantiated and the DDL re-executed

Objective of this ticket is to ensure that the retry arriving to the new primary results in a noop with the router receiving a proper successful response.



 Comments   
Comment by Githook User [ 15/Nov/21 ]

Author:

{'name': 'Pierlauro Sciarelli', 'email': 'pierlauro.sciarelli@mongodb.com', 'username': 'pierlauro'}

Message: SERVER-57271 Complete TODO listed in SERVER-57128
Branch: master
https://github.com/mongodb/mongo/commit/a9270c3bee7d54aa1b257d95aa42d5f6b4bda4d9

Comment by Kaloian Manassiev [ 24/May/21 ]

I don't think we can possibly fix this scenario unless the client starts attaching LSID/txnNumber just like retryable writes. It is essentially a retryable DDL. Even if we fix it at the level of MongoS < - > MongoD, the same issue exists between Client < - > MongoD.

I propose that we close this ticket, since it is no different than DDL against a replica set.

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