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

create_new_indexes_with_conflict.js hangs intermittently due to unreliable log line checking

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 4.4.1, 4.7.0
    • Component/s: Storage
    • Labels:
      None
    • Backwards Compatibility:
      Fully Compatible
    • Operating System:
      ALL
    • Backport Requested:
      v4.4
    • Sprint:
      Execution Team 2020-07-27
    • Linked BF Score:
      9

      Description

      TLDR: MODE_X collection access in IndexBuildsCoordinator::_filterSpecsAndRegisterBuild() is not compatible with second test case; and fix log message detection in test.

      create_new_indexes_with_conflict.js runs two test cases using the same test function runConflictingCollectionCreate(). During the second test run, the test function may erroneously detect the log message from the first test run.

      This issue may be resolved by using checkLog.containsWithCount() rather than checkLog.contains(); or by splitting up the test into two separate JS files. However, fixing the test itself exposes an issue with the second test case which runs an index build on an existing collection - the second test case will hang due to an exclusive lock in IndexBuildsCoordinator::_filterSpecsAndRegisterBuild() that conflicts with the fail point in create_indexes.cpp.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              benety.goh Benety Goh
              Reporter:
              benety.goh Benety Goh
              Participants:
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: