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

Race in WaitWithOpTimeEarlierThanLowestQueued causes it to fail

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 4.2.1, 4.3.1
    • Component/s: Sharding
    • Labels:
      None
    • Backwards Compatibility:
      Fully Compatible
    • Operating System:
      ALL
    • Backport Requested:
      v4.2
    • Sprint:
      Sharding 2019-08-12
    • Linked BF Score:
      43

      Description

      Most of the time, when the 2nd wait is queued, the background thread has not picked up the first wait yet, so it just cut in the line as expected. However, if the 2nd request is called and the background thread is already in the middle of waiting, it will get signalled instead. Before SERVER-42335, it will cause the future to become ready since it was not propagating the signal properly. After SERVER-42335, it will cause the test to hang because it is waiting for the future of the 2nd wait and was not expecting the 1st wait to "consume" the wait.

        Attachments

          Activity

            People

            Assignee:
            renctan Randolph Tan
            Reporter:
            renctan Randolph Tan
            Participants:
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: