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

Don't re-open connections and sessions with pre-fetching enabled after damaging tables

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • WT11.3.0, 7.3.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Storage Engines
    • 1
    • 2024-01-09 - I Grew Tired

      Some failures were observed in test_salvage01 and test_encrypt07 when pre-fetching was temporarily turned on by default for all sessions and connections. This is because both these tests utilise the test_salvage_api_damaged function which:

      • Purposely damages the table.
      • Re-opens the connection and session (still with pre-fetching turned on).
      • Attempts to verify the table and consequently runs into a corrupt block.

      The pre-fetching functionality does check for corrupted blocks and skips reading over these, but it does this through checking the WT_CONN_DATA_CORRUPTION flag. This flag will get cleared once we re-open the connection and hence verify will attempt to read the corrupt blocks.

      We need to modify the test_salvage_api_damaged function in test_salvage01 so that it re-opens the connection and session with pre-fetching explicitly disabled.

            Assignee:
            backlog-server-storage-engines [DO NOT USE] Backlog - Storage Engines Team
            Reporter:
            monica.ng@mongodb.com Monica Ng
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: