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

      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: