-
Type:
Bug
-
Resolution: Fixed
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: Checkpoints, Metadata
-
Storage Engines - Foundations
-
None
-
None
ASAN flagged an apparent invalid buffer read. The rough sequence of events is:
- The function reads the metadata_key value from md_cursor into current_value (line 337).
- The function writes a new value into the same key on the same cursor, invalidating the buffer that current_value references (line 344).
- The now invalid current_value gets passed to __disagg_discard_old_checkpoint_check, trigger an invalid read further down the call chain (line 361).
I'm not that familiar with the cursor interface, but it may be that this behavior leads to __disagg_discard_old_checkpoint_check reading the updated metadata value instead of the old one as intended when WT runs without the copy/release setting used for ASAN builds.
- related to
-
WT-17138 Add testing with debug_mode=(cursor_copy=true) under ASAN
-
- Open
-