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

ReshardingOplogFetcher stops fetching new oplog entries if remote donor shard responds with Interruption exception

    • Fully Compatible
    • ALL
    • v5.0
    • Sharding 2021-08-09
    • 1

      A remote donor shard may return an InterruptedDueToReplStateChange error response as a result of stepping down or transitioning into rollback. The ReshardingOplogFetcher thread will (incorrectly) stops rescheduling itself when this happens.

      try {
          return consume(client, factory, targetShard.get());
      } catch (const ExceptionForCat<ErrorCategory::Interruption>&) {
          return false;
      } ...
      

      The ReshardingOplogFetcher thread should instead swallow the Interruption exception and consult the cancellation token for whether or not it should reschedule itself.

            Assignee:
            max.hirschhorn@mongodb.com Max Hirschhorn
            Reporter:
            max.hirschhorn@mongodb.com Max Hirschhorn
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: