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

Remove __wt_modify_reconstruct_from_upd_list WT_ROLLBACK message from format output

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

      When there are test/format failures, often the output shows thousands and thousands of lines of warning or informational messages about WT_ROLLBACK. These messages confuse the baron scripts extracting failure information and make it very difficult to find or see the real error message, which is often just one line.

      The messages are all like this:

      [1731438670:153072][21209:0x7f5fce6a9700], t, file:T00008.wt, WT_CURSOR.prev: [WT_VERB_DEFAULT][ERROR]: __wt_modify_reconstruct_from_upd_list, 436: Read-uncommitted readers do not support reconstructing a record with modifies.: WT_ROLLBACK: conflict between concurrent operations
      [1731438670:207627][21209:0x7f5fce6a9700], t, file:T00009.wt, WT_CURSOR.prev: [WT_VERB_DEFAULT][ERROR]: __wt_modify_reconstruct_from_upd_list, 436: Read-uncommitted readers do not support reconstructing a record with modifies.: WT_ROLLBACK: conflict between concurrent operations
      [1731438671:892535][21209:0x7f5fcd6a7700], t, file:T00009.wt, WT_CURSOR.next: [WT_VERB_DEFAULT][ERROR]: __wt_modify_reconstruct_from_upd_list, 436: Read-uncommitted readers do not support reconstructing a record with modifies.: WT_ROLLBACK: conflict between concurrent operations
      [1731438672:281056][21209:0x7f5fcdea8700], t, file:T00009.wt, WT_CURSOR.prev: [WT_VERB_DEFAULT][ERROR]: __wt_modify_reconstruct_from_upd_list, 436: Read-uncommitted readers do not support reconstructing a record with modifies.: WT_ROLLBACK: conflict between concurrent operations
      

      There are a number of ways to solve this:

      • Removing the message.
      • Having test/format's message handler ignore or discard the message.
      • Having the evergreen scripts filter it out.
      • Use sub-level error codes and get_last_error as a replacement for repetitive/verbose logging.
        • This is the preferred approach.

      Definition of Done:

      • The logs are easier to triage because the spammy messages have been removed.

            Assignee:
            jie.chen@mongodb.com Jie Chen
            Reporter:
            sue.loverso@mongodb.com Susan LoVerso
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated: