Resuming a change stream on a stale mongos with a valid resume token may incorrectly fail

XMLWordPrintableJSON

    • Query
    • ALL
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None

      After SERVER-32088, the following scenario would incorrectly fail to resume:

      1. Create and shard collection through mongos1 (the soon-to-be stale mongos).
      2. Drop and recreate the same collection name through mongos2.
      3. Open a change stream through mongos2 and obtain a valid resume token.
      4. Attempt to resume using the resume token from (3) through mongos1, which is now stale.
      --> The mongos will compare it's stale collection's UUID to the UUID in the resume token, and incorrectly assert.

      One potential fix is to always perform a hard refresh of the shard registry if we're attempting to resume a change stream, before getting the collection UUID.

            Assignee:
            Backlog - Query Team (Inactive)
            Reporter:
            Nicholas Zolnierz
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: