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

Use RFC-1924 Ascii85 variation for dumping corrupt block content

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

      On detection of a checksum failure the corrupt block content is dumped to the log and available through the mongodb server log for analysis.

      The current text format for the dump is hex for each individual byte, so the output is at a minimum 2x times (but in practice 3x due to spaces) the size of the corrupt block in the log.

      We could reduce the logging size by using either Ascii85 or alternatively Base64 (uuencode) for the block dump. Both are straight forward to implement, and there may well be suitably licensed pre-existing open source implementations that can be used.

      If Ascii85 is chosen, then the RFC-1924 variation is recommended as it uses a set of characters that is suitable for JSON. (Does not require escaping.)

            Assignee:
            backlog-server-storage-engines [DO NOT USE] Backlog - Storage Engines Team
            Reporter:
            marc.butler@mongodb.com Marc Butler (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated: