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

Make bgsync check stopOplogFetcher failpoint before scheduling new OplogFetcher

    XMLWordPrintable

Details

    • Bug
    • Status: Closed
    • Major - P3
    • Resolution: Fixed
    • None
    • 3.2.12, 3.4.2, 3.5.2
    • Replication
    • None
    • Fully Compatible
    • ALL
    • v3.4, v3.2
    • Repl 2017-01-23, Repl 2017-02-13
    • 26

    Description

      Uses of the stopOplogFetcher are currently racy. Currently it works by instructing the oplog fetcher to throw out any batch it has and return. After that happens, however, bgsync will reschedule a new OplogFetcher, which will most likely refetch the same batch. So long as the failpoint is on each re-fetch of that batch will continue to be thrown out. But now there's a race when turning off the failpoint where it may have fetched the batch, but not yet hit the failpoint, then the failpoint is disabled and the batch is processed.

      Attachments

        Activity

          People

            spencer@mongodb.com Spencer Brody (Inactive)
            spencer@mongodb.com Spencer Brody (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: