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

collection drop hangs in test of transactions

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Done
    • Affects Version/s: 3.7.7
    • Fix Version/s: None
    • Component/s: Storage
    • Labels:
      None
    • Operating System:
      ALL
    • Steps To Reproduce:
      Hide
      1. Start a 3-member replica set
      2. Create a collection
      3. Start a transaction in session 1
      4. Insert one document into the collection using session 1
      5. Drop the collection (using an implicit session, call it 2)
      6. Commit the transaction in session 1 (no concurrency here, this happens only after the drop completes)

      Expected result:

      The drop command waits for 1 minute, upon which it returns normally and the collection has been dropped. The commitTransaction fails with the error ""Command failed with error 251: 'Transaction 1 has been aborted.'" This happens sometimes, especially as the very first thing I do on a freshly created replica set

      Actual result:

      The drop command hangs indefinitely. This happens sometimes, frequently in the test run after seeing the expected result.

      I've attached the output of db.currentOp during this hang.

      Show
      Start a 3-member replica set Create a collection Start a transaction in session 1 Insert one document into the collection using session 1 Drop the collection (using an implicit session, call it 2) Commit the transaction in session 1 (no concurrency here, this happens only after the drop completes) Expected result: The drop command waits for 1 minute, upon which it returns normally and the collection has been dropped. The commitTransaction fails with the error ""Command failed with error 251: 'Transaction 1 has been aborted.'" This happens sometimes, especially as the very first thing I do on a freshly created replica set Actual result: The drop command hangs indefinitely. This happens sometimes, frequently in the test run after seeing the expected result. I've attached the output of db.currentOp during this hang.
    • Sprint:
      Storage NYC 2018-05-07, Storage NYC 2018-05-21

      Description

      A drop of a collection can hang when there is an open but inactive transaction that has modified a document in that collection.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              dianna.hohensee Dianna Hohensee
              Reporter:
              jeff.yemin Jeffrey Yemin
              Participants:
              Votes:
              0 Vote for this issue
              Watchers:
              14 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: