Fix layered cursors ingest/stable specific statistic counting

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Unresolved
    • Priority: Minor - P4
    • None
    • Affects Version/s: None
    • Component/s: Documentation
    • None
    • Storage Engines, Storage Engines - Foundations
    • SE Foundations - Q3+ Backlog
    • 1

      Currently we increase ingest/stable statistic counters basing on current_cursor value. But current_cursor value could is expected to be set to NULL in case on any issue (e.g. returning NOT_FOUND) so we need to handle this case as well. Example:

       

      __clayered_search(WT_CURSOR *cursor)
      {
      ...
          ret = __clayered_lookup(session, clayered, &cursor->value);
      
          WT_STAT_CONN_DSRC_INCR(session, layered_curs_search);
          // IF LOOKUP RETURNS NOT_FOUND, current_cursor IS EXPECTED TO BE NULL
          if (clayered->current_cursor == clayered->ingest_cursor)
              WT_STAT_CONN_DSRC_INCR(session, layered_curs_search_ingest);
          else
              WT_STAT_CONN_DSRC_INCR(session, layered_curs_search_stable);
      ...
      }
      

      Scope of the ticket: fix innacuracy in counting ingest/stable statistic.

       

            Assignee:
            Ivan Kochin
            Reporter:
            Ivan Kochin
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: