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

Implement dump_blocks in wt_verify.py

    • Type: Icon: Improvement Improvement
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • WT11.3.0, 8.1.0-rc0
    • Affects Version/s: None
    • Component/s: Tools
    • None
    • Storage Engines
    • 5
    • 2024-05-28 - FOLLOW ON SPRINT

      Skunkworks 2024:

      The idea is to build on top of PM-2957 and add the dump_blocks command. The existing dump_pages may already have all the information but I will need to check.
      I'd like to be able to print graphs about blocks and their location in a file. This way, we should be able to assess rapidly if the file is fragmented or not. We should be able to use the tool before/after compaction to verify compaction has rewritten blocks at the expected locations.

      Given files can be quite big and it might be hard to display what each offset is made of, it would be great to show the empty space as well. For instance, it could be interesting to know we have lots of empty small blocks which could explain why we may have a lot of free space but that cannot be reused.

        1. broken_barh_compaction.png
          269 kB
          Etienne Petrel
        2. broken_barh_cpp.png
          613 kB
          Etienne Petrel
        3. broken_barh_tf.png
          56 kB
          Etienne Petrel
        4. broken_barh.png
          226 kB
          Etienne Petrel
        5. hist_cpp.png
          216 kB
          Etienne Petrel
        6. hist_tf.png
          45 kB
          Etienne Petrel
        7. vertical_bar_compaction.png
          156 kB
          Etienne Petrel
        8. vertical_bar_cpp.png
          137 kB
          Etienne Petrel
        9. vertical_bar_tf.png
          49 kB
          Etienne Petrel
        10. vertical_bar.png
          155 kB
          Etienne Petrel

            Assignee:
            etienne.petrel@mongodb.com Etienne Petrel
            Reporter:
            etienne.petrel@mongodb.com Etienne Petrel
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: