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

dropDatabase() should wait for collection drops using ReplicationCoordinator::awaitReplication() instead of awaitReplicationOfLastOpForClient()

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 3.6.3, 3.7.1
    • Component/s: Replication
    • Labels:
      None
    • Backwards Compatibility:
      Fully Compatible
    • Operating System:
      ALL
    • Linked BF Score:
      0

      Description

      dropDatabase currently uses both ReplicationCoordinator::awaitReplication() and awaitReplicationOfLastOpForClient() when waiting for collection drops to complete depending the state of the collections in the database at command invocation. We should be unifying these two code paths and use awaitReplication() with an explicit optime. awaitReplicationOfLastOpForClient() also has the unnecessary effect of waiting for the current snapshot which is not necessary for dropDatabase because we are only interested in waiting for the drop pending collection reaper, which is triggered by the commit optime advancing, to complete its work.

        Attachments

          Issue Links

            Activity

              People

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

                Dates

                Created:
                Updated:
                Resolved: