[SERVER-78317] Investigate BatchedDeleteStage assuming fromMigrate guarantees documents will not change Created: 22/Jun/23  Updated: 20/Nov/23  Resolved: 20/Nov/23

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

Type: Bug Priority: Major - P3
Reporter: Yujin Kang Park Assignee: Antonio Fuschetto
Resolution: Done Votes: 0
Labels: car-investigation
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
is related to SERVER-77543 Support `fromMigrate` in batched dele... Closed
is related to SERVER-83440 Revert support for `fromMigrate` in b... Closed
Assigned Teams:
Catalog and Routing
Operating System: ALL
Sprint: Execution EMEA Team 2023-07-24, Execution EMEA Team 2023-08-21, Execution EMEA Team 2023-09-04, Execution EMEA Team 2023-09-18, CAR Team 2023-11-27
Participants:

 Description   

SERVER-77543 added support for fromMigrate to batched deletes, with the assumption that a migration implies the documents will not change, and it is not necessary to ensure they still match before deleting. There is concern this assumption is not valid, as users can connect directly to the shard.

This ticket is to track and discuss this fact, and possibly address it.



 Comments   
Comment by Antonio Fuschetto [ 20/Nov/23 ]

Thanks josef.ahmad@mongodb.com. Filed SERVER-83440 to revert that logic.

Comment by Josef Ahmad [ 17/Nov/23 ]

antonio.fuschetto@mongodb.com ignore the above, I refreshed my memory on this. I don't have any objections to removing fromMigrate support from the batched deleter.

Comment by Josef Ahmad [ 17/Nov/23 ]

antonio.fuschetto@mongodb.com IIRC isn't the fromMigrate parameter also used to prevent writes from direct shard connections from generating change stream events? Although I think we're going restrict direct shard connection soon, I think the fromMigrate behaviour here is still relevant.

Comment by Antonio Fuschetto [ 17/Nov/23 ]

In short, the support for fromMigrate in the batched deletes is no longer required. The idea was to use batched delete in the range deleter, but after some testing we highlighted that this would increase latency causing an impact on the user's workload (see SERVER-66279). Consequently, if we don't see additional values for SERVER-77543, it can be reverted.

Comment by Yujin Kang Park [ 22/Jun/23 ]

pierlauro.sciarelli@mongodb.com and kaloian.manassiev@mongodb.com, what are your thoughts on this? I am aware you already discussed this issue, but I don't know if you reached any conclusion.
cc josef.ahmad@mongodb.com 

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