Use of invalidated buffer in __disagg_apply_checkpoint_meta

XMLWordPrintableJSON

    • Storage Engines - Foundations
    • None
    • None

      ASAN flagged an apparent invalid buffer read. The rough sequence of events is:

      1. The function reads the metadata_key value from md_cursor into current_value (line 337).
      2. The function writes a new value into the same key on the same cursor, invalidating the buffer that current_value references (line 344).
      3. 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.

            Assignee:
            Ivan Kochin
            Reporter:
            Justin Seyster
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: