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

Only activate skipWriteConflictRetries failpoint for user connections

    XMLWordPrintableJSON

Details

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major - P3 Major - P3
    • 4.7.0, 4.4.2
    • None
    • None
    • None
    • Fully Compatible
    • ALL
    • v4.4
    • Execution Team 2020-08-10
    • 18

    Description

      Both the initial sync and rollback fuzzers enable the skipWriteConflictRetries failpoint, which effectively removes the writeConflictRetry exception handler around all operations. The rationale for this failpoint is that these fuzzers can generate statements that block on transactions indefinitely, and allowing them to fail immediately allows tests to make forward progress.

      For non-user operations, however, this allows WriteConflictExceptions to escape threads that rely on writeConflictRetry exception-handling mechanism.

      We can work around this problem by only activating the skipWriteConflictRetries failpoint if the operation isFromUserConnection. This would allow the tests to make forward progress without risking crashing internal threads.

      Attachments

        Activity

          People

            louis.williams@mongodb.com Louis Williams
            louis.williams@mongodb.com Louis Williams
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: