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

    XMLWordPrintableJSON

Details

    Description

      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.

      Attachments

        Activity

          People

            Unassigned Unassigned
            backlog-server-pm Backlog - Core Eng Program Management Team
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              12 weeks, 1 day ago