Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-63387

StreamingCursor should return backup blocks in the order they were retrieved from the WiredTiger backup cursor

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major - P3
    • Resolution: Fixed
    • 5.0.5
    • 5.0.8, 6.0.0-rc0
    • None
    • Fully Compatible
    • ALL
    • v5.0
    • Execution Team 2022-03-07, Execution Team 2022-03-21, Execution Team 2022-04-04

    Description

      The server uses a streaming cursor to pre-fetch 1,000 backup blocks from WiredTiger instead of loading all of the backup blocks into memory at once.

      Backup blocks returned by WiredTiger are pushed into a list, but when it's time to return these backup blocks to the user, we return them from the back of the list instead of the front. This causes us to return backup blocks out-of-order with what WiredTiger reported.

      The Cloud back-end code expects that all the diffs for a file will be reported consecutively, without the diffs for any other files reported in between. The offsets are also reported in descending order instead of ascending order.

      Attachments

        1. patch.diff
          0.6 kB
        2. repro.js
          3 kB

        Issue Links

          Activity

            People

              yujin.kang@mongodb.com Yujin Kang Park
              gregory.wlodarek@mongodb.com Gregory Wlodarek
              Votes:
              0 Vote for this issue
              Watchers:
              11 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: