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

Wait for node to find appropriate sync source before disabling failpoint in do_not_advance_commit_point_beyond_last_applied_term.js

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 4.0.13, 4.2.1, 4.3.1
    • Affects Version/s: None
    • Component/s: Replication
    • Labels:
    • Fully Compatible
    • ALL
    • v4.2, v4.0
    • Repl 2019-08-12
    • 16

      Currently, the stopReplProducerOnDocument failpoint ignores and silently fails the batch of downloaded operations. In most cases, we expect the document that triggers the failpoint should never be applied. However, since we continue to receive responses from the fetcher even when the failpoint is enabled, it is possible that a fetcher response is already in the middle of being processed when we disable the failpoint. This can lead to a document to be applied when we don't expect it to.

      In do_not_advance_commit_point_beyond_last_applied_term.js, it is possible that we end up replicating the term 3 document onto node E which we don't expect, this causes node B to sync from node E which our test doesn't account for. We should instead wait for node E to sync from node B before disabling the stopReplProducerOnDocument failpoint.

            jason.chan@mongodb.com Jason Chan
            jason.chan@mongodb.com Jason Chan
            0 Vote for this issue
            2 Start watching this issue