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

$changeStream can fail if a shard was removed

    XMLWordPrintableJSON

Details

    • Query Execution
    • ALL
    • Query 2018-02-12, Query 2018-02-26
    • 0

    Description

      because mongos currently does not allow remote queries on shards that were removed. It is also unclear from the user point of view when is it safe to physically take out the shard that was removed and not make the change stream lose track of some of the writes.

      Possible fix is to make it such that removeShard and changeStream work together:

      • removeShard will insert an 'end of life' sentinel oplog entry
      • changeStream sees the sentinel and kills itself
      • removeShard will not return success until there are no more change stream cursors in the shard

      In this scheme, the user will know that it is safe to completely decommission the shard once removeShard completes.

      Attachments

        Issue Links

          Activity

            People

              backlog-query-execution Backlog - Query Execution
              randolph@mongodb.com Randolph Tan
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated: