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

Retry importing donor collections

    • Type: Icon: Task Task
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • Server Serverless 2021-12-13, Server Serverless 2021-12-27, Server Serverless 2022-01-10

      For multitenant migrations with protocol "shard merge", when the recipient imports donor collections it may fail. The only retryable error we know of is if R's stable timestamp is < the D collections' checkpoint timestamp, aka startApplyingDonorOpTime. We can advance R's majority commit point as necessary (SERVER-61140) but the stable timestamp is updated a bit later than the majority commit point, so R needs a retry loop while it waits.

      Question: if there's a WiredTiger error when R tries to import a D collection, how does R know the cause of the error? WT uses EINVAL to express many errors, not just "stable timestamp too old". If R can't determine the cause of the error, it won't know whether to retry.

            suganthi.mani@mongodb.com Suganthi Mani
            jesse@mongodb.com A. Jesse Jiryu Davis
            0 Vote for this issue
            2 Start watching this issue