Refactor __checkpoint_db_internal to use cfg struct

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Duplicate
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Checkpoints
    • None

      After WT-16932, there should be a cfg struct containing information extracted from the config string. This struct should be used in place of local variables and instances of the config string later on in the function.

      Example:

          /* Avoid doing work if possible. */
          WT_RET(__checkpoint_can_skip(session, cfg, &use_timestamp, &can_skip));
          if (can_skip) {
              WT_STAT_CONN_INCR(session, checkpoint_skipped);
              return (0);
          }
          /* Check if this is a named checkpoint. */
          WT_RET(__wt_config_gets(session, cfg, "name", &cval));
          if (cval.len != 0) {
              name = cval.str;
              namelen = cval.len;
          } else {
              name = NULL;
              namelen = 0;
          } 

      Variables such as use_timestamp, can_skip, name and namelen can all be placed into the config struct, and these functions can be replaced with a single parse_config function.

      Definition of done:

      • Instances in __checkpoint_db_internal uses the config string or passes it into a function instead use the config struct
      • The config string is only parsed once, and local variables that were used to store information from the config struct are removed.

            Assignee:
            Dylan Liang
            Reporter:
            Dylan Liang
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: