Uploaded image for project: 'WiredTiger'
  1. WiredTiger
  2. WT-7980

Create interface to "log:" cursor which switches log files before returning them

    • Type: Icon: Improvement Improvement
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • WT10.0.1, 5.0.4, 4.4.10, 5.1.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • Labels:
    • 13
    • Storage - Ra 2021-09-20, Storage - Ra 2021-10-04

      Currently mongodb "backupCursorExtend" uses the WiredTiger "log:" cursor to get all the log files so it can extend the backup. For file-based initial sync, we would like to be able to call backupCursorExtend multiple times to extend the backup each time.

      Currently this will not work, because a "log:" cursor will return a log file that may change later. So either the caller has to re-read all the log files, or it gets corrupted data. Internally there is a flag 'active_only' which

      1) Limits the cursor to log files associated with the current checkpoint and
      2) Forces a new log file when opened, and does not return it

      Since the currrent checkpoint can advance during backup, we don't want 1), but we do want 2).

      So this ticket is to request an API for a log cursor which forces a new log file to be opened and does not return the new one (e.g. open_cursor(session, "log:switched",...) except with a better flag name).

            sue.loverso@mongodb.com Susan LoVerso
            matthew.russotto@mongodb.com Matthew Russotto
            0 Vote for this issue
            9 Start watching this issue