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

Segmentation fault: in mongo::ephemeral_for_test::RadixStore::_mergeResolveConflict

    • Type: Icon: Bug Bug
    • Resolution: Won't Fix
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: 5.0.14, 6.0.4
    • Component/s: None
    • Labels:
      None
    • Storage Execution
    • ALL
    • Hide

      It's complicated to reproduce, because it depends on the list of impacted collections.

      Show
      It's complicated to reproduce, because it depends on the list of impacted collections.
    • Execution Team 2023-03-06

      I'm working on a JS progam using MongoDB. Our integration tests use the npm library `mongo-memory-server` to download/run a mongod server with ephemeral_for_tests engine.

      Each test cleans its test collections by issuing `collection.deleteMany({})` on every modified collection during the test. All these deleteMany are executed in parallel.

      When executing many tests, it happens that the mongod server crashes with a segfault.

      Workarounds

      • If I switch the deletions to be executed 1 by 1 (no parallelism), the crash doesn't occur anymore.
      • The crash occurs with mongod 5.0.14 and 6.0.4. If I downgrade to 4.4.18, the crash doesn't occur anymore. 

      ----------------

      I was able to generate 2 core dumps (in attachment) with mongod 6.0.4:

      • One sees the segfault in ephemeral_for_test::RadixStore<...>::merge3
      • The other in  mongo::ephemeral_for_test::CursorBase::setEndPosition

        1. core.34722.gz
          11.35 MB
        2. core.36392.gz
          9.30 MB

            Assignee:
            louis.williams@mongodb.com Louis Williams
            Reporter:
            luc.vidal@360learning.com Luc Vidal
            Votes:
            0 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated:
              Resolved: