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

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 4.4.1, 4.7.0
    • Affects Version/s: None
    • Component/s: Storage
    • Labels:
      None
    • Fully Compatible
    • ALL
    • v4.4
    • Execution Team 2020-07-27
    • 9

      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.

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

              Created:
              Updated:
              Resolved: