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

Investigate disallowing DBDirectClient from changing the storage engine ReadSource

    • Type: Icon: Improvement Improvement
    • Resolution: Won't Do
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • Labels:
    • Storage Execution

      The fact that DBDirectClient is allowed to change the storage engine snapshot is the cause of many hard-to-reproduce bugs and many problems. DBDirectClient can early-returned in waitForReadConcern, which is already done for snapshot readConcern. Additionally, the logic in AutoGetCollectionForRead allows DBDirectClient to potentially change the storage engine snapshot while another AutoGetCollectionForRead has read from a different snapshot (see SERVER-41361).

      We should investigate whether this behavior is actually necessary, and disallow it if possible.

            Assignee:
            backlog-server-execution [DO NOT USE] Backlog - Storage Execution Team
            Reporter:
            louis.williams@mongodb.com Louis Williams
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: