Filter log-salvage NOTICEs in crash-recovery tests

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Duplicate
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Salvage
    • None
    • Storage Engines, Storage Engines - Persistence
    • 495.769
    • None
    • None

      When a test simulates a crash with log=(enabled), simulate_crash_restart can copy the log file mid-write, leaving a partial record in the copy. On reopen, _log_has_hole and _log_record_verify detect the partial record, emit WT_VERB_LOG NOTICE}}s ({{record length corruption 0x0 and/or flag corruption 0x4), truncate the log at that offset, and recovery completes with data intact. The tests fail only because their stdout filter doesn't ignore those NOTICE lines.

      Definition of done

      • A python test reproducer over both NOTICE variants, and asserts data integrity post-recovery (green in CI).
      • rollback_to_stable_util.py - filter widened to WT_VERB_RTS|WT_VERB_LOG.
      • test_prepare20.py adds ignoreStdoutPatternIfExists('WT_VERB_LOG')
      • Will need to backport to v7.0 to close WT-17183 as fixed.

            Assignee:
            Mariam Mojid
            Reporter:
            Mariam Mojid
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: