Prevent "back-in-time" change stream resume token on MongoS

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Fixed
    • Priority: Major - P3
    • 7.0.0-rc0, 6.0.7
    • Affects Version/s: None
    • Component/s: None
    • None
    • Fully Compatible
    • ALL
    • v6.0
    • QE 2023-03-20, QE 2023-04-03
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      mongoS will crash with an invariant failure when:

      1. The initial resume token expected by mongoS is the split event fragment.
      2. On the shards, DSCSCheckResumability lets the base event through expecting it to be split.
      3. But there is no split stage, and the base event is returned to mongoS directly as-is.
      4. But the event's resume token is BEFORE the split, so mongoS has gone back-in-time.

              Assignee:
              Romans Kasperovics
              Reporter:
              Romans Kasperovics
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: