Uploaded image for project: 'WiredTiger'
  1. WiredTiger
  2. WT-13501

Reconsider checkpoint state enums

    • Type: Icon: Improvement Improvement
    • Resolution: Unresolved
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Checkpoints
    • Storage Engines
    • StorEng - Defined Pipeline

      In WT-12390 the checkpoint states were changed from explicit #define}}s to an {{enum. The change was simple but has repercussions on developer productivity and triaging FTDC.

      While looking at a lot of FTDC, I was comparing the checkpoint progress state in t2. I could see it moving from one to other states. I saw that "state 4" was getting increasingly longer with each checkpoint in one run.

      I went to look for exactly what checkpoint state 4 is and there is no way to determine it now that states are enum instead of defined. I had to visually/manually count from the top of the list. This is very error prone and could be very difficult to maintain going forward if one accidentally looks at a different codebase and a state has been added or removed.

      I suggest WT goes back to using #define for that state especially given it is visible to all via statistics.

            Assignee:
            backlog-server-storage-engines [DO NOT USE] Backlog - Storage Engines Team
            Reporter:
            sue.loverso@mongodb.com Susan LoVerso
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated: