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

Only activate skipWriteConflictRetries failpoint for user connections

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 4.7.0, 4.4.2
    • Component/s: None
    • Labels:
      None
    • Backwards Compatibility:
      Fully Compatible
    • Operating System:
      ALL
    • Backport Requested:
      v4.4
    • Sprint:
      Execution Team 2020-08-10
    • Linked BF Score:
      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

            Assignee:
            louis.williams Louis Williams
            Reporter:
            louis.williams Louis Williams
            Participants:
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: