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.
- is related to
-
WT-12072 Disable pre-fetching for corrupted pages
- Closed