[SERVER-61174] scatterGatherVersionedTargetByRoutingTable handles TenantMigrationAborted Created: 01/Nov/21  Updated: 29/Oct/23  Resolved: 05/Nov/21

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

Type: Task Priority: Major - P3
Reporter: Esha Maharishi (Inactive) Assignee: Sophia Tan
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Backwards Compatibility: Fully Compatible
Sprint: Server Serverless 2021-11-15
Participants:

 Description   

Many commands use the scatterGatherVersionedTargetByRoutingTable helper. Any such commands that are writes (generate an oplog entry) will fail with TenantMigrationAborted if received by the donor while a tenant migration is in the "blocking writes" state, and then the tenant migration ends up aborting. One example of such a command is createIndexes.

Currently, since mongos/mongoq do not handle TenantMigrationAborted, the TenantMigrationAborted error will be returned to the client. This ticket is to make scatterGatherVersionedTargetByRoutingTable throw on TenantMigrationAborted (similar to how it throws on other routing errors).

The TenantMigrationAborted error will then be caught in the service entry point and the command will be retried.



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

Author:

{'name': 'Sophia Tan', 'email': 'sophia_tll@hotmail.com', 'username': 'sophiatll'}

Message: SERVER-61174 scatterGatherVersionedTargetByRoutingTable handles TenantMigrationAborted
Branch: master
https://github.com/mongodb/mongo/commit/a67facc9efe8909f7a6de1d33fbfba5d3307bfac

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