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

Change streams can send getMores without logical session ids

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Duplicate
    • Affects Version/s: None
    • Fix Version/s: None
    • Labels:
      None
    • Operating System:
      ALL

      Description

      Running a change stream against a mongos will set up one or more tailable cursors on the shards, then continuously poll those cursors until there is an unconsumed result. This polling continues to happen in the background even between the client's getMores. As a result, the AsyncResultsMerger can schedule a request with a null operation context here. If this happens, the getMore will not include the logical session id, or possibly other information that is stored on the OperationContext.

      Because the OperationContext is not required to be non-null within scheduleRemoteCommand, there may be other scenarios in which we do not include the logical session id or other metadata.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              backlog-server-query Backlog - Query Team
              Reporter:
              charlie.swanson Charlie Swanson
              Participants:
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: