Uploaded image for project: 'Documentation'
  1. Documentation
  2. DOCS-16497

Investigate changes in SERVER-79848: Difference in behavior of $_resumeAfter between classic and SBE engines

    • 2

      Original Downstream Change Summary

      This patch makes it so that both the classic engine and SBE obey the following semantics for the $_requestResumeToken and $_resumeAfter query options:

      • For $_requestResumeToken, 'null' is returned as the resumeToken after scanning the last document in a collection (prior to this patch, SBE would return the record id of the last document).
      • When a null RecordId is specified to $_resumeAfter, we raise a KeyNotFound error (prior to this patch, the classic engine would restart the scan from the beginning).

        Description of Linked Ticket

        When resuming from the last record in a collection, the classic engine returns resume token {"$recordId" : null} and SBE returns the last record.
        Resuming from {"$recordId" : null} in the classic record cycles back to the start of the collection and raises "KeyNotFound" error in SBE.

            Assignee:
            lauren.tran@mongodb.com Lauren Tran
            Reporter:
            backlog-server-pm Backlog - Core Eng Program Management Team
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved:
              7 weeks, 3 days ago