Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-61174

scatterGatherVersionedTargetByRoutingTable handles TenantMigrationAborted

    XMLWordPrintableJSON

Details

    • Icon: Task Task
    • Resolution: Fixed
    • Icon: Major - P3 Major - P3
    • 5.2.0
    • None
    • None
    • None
    • Fully Compatible
    • Server Serverless 2021-11-15

    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.

      Attachments

        Activity

          People

            sophia.tan@mongodb.com Sophia Tan
            esha.maharishi@mongodb.com Esha Maharishi (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: