Missing error handling when freeing the root page

XMLWordPrintableJSON

    • Storage Engines, Storage Engines - Persistence
    • SE Persistence - 2025-12-19
    • 1

      We should handle the errors from bm->free:

                  WT_CKPT_FOREACH (ckptbase, ckpt_temp) {
                      /*
                       * In disagg, checkpoint cookie is the same as address cookie of the root page, this
                       * applies to disagg only and not classic WT. Currently all checkpoint root page are
                       * written with an unique page ID, therefore discarding the old checkpoint root page
                       * here is appropriate. If the logic for writing checkpoint root pages ever change,
                       * the discard logic would also need to be reconsidered.
                       */
                      if (F_ISSET(ckpt_temp, WT_CKPT_DELETE) && ckpt_temp->raw.data)
                          bm->free(bm, session, ckpt_temp->raw.data, ckpt_temp->raw.size);
                  }
      

            Assignee:
            Etienne Petrel
            Reporter:
            Etienne Petrel
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: