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

Database profiling should not serialize writes on all collections

    • Type: Icon: Improvement Improvement
    • Resolution: Gone away
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Storage
    • Labels:
      None
    • Storage Execution
    • Execution Team 2021-11-15

      Capped inserts on the primary are serialized because capped inserts on secondaries need to be serialized, and we need both primary and secondary to have the same level of write parallelism. Capped inserts on the secondary need to be serialized because we can only use the oplog to determine the ordering. This is a problem for a the system.profile collection which we use for Database profiling, since, in order to achieve the above, we use the metadata lock acquisition. This effectively produces database-level exclusive locking granularity for both reads and writes when the profiler is enabled.

            Assignee:
            backlog-server-execution [DO NOT USE] Backlog - Storage Execution Team
            Reporter:
            dmitry.agranat@mongodb.com Dmitry Agranat
            Votes:
            1 Vote for this issue
            Watchers:
            10 Start watching this issue

              Created:
              Updated:
              Resolved: