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

set workgen keys/values for non-dynamic tables

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • WT11.2.0, 7.0.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • None

      Recent changes to workgen have lost the ability to set correct key/values for "regular" tables.

      With an older workgen (October 2022 c522dcec), running the example workload that first insert 1 element, then inserts 5 in parallel:

      $ python ../bench/workgen/runner/example_simple.py --verbose
      
      <><><><> table:simple <><><><>
      key: 000000001
      value: 000000000000000000000000000000000000001
      <><><><><><><><><><><><>
      
      <><><><> table:simple <><><><>
      key: 000000001
      value: 000000000000000000000000000000000000001
      key: 000000002
      value: 000000000000000000000000000000000000002
      key: 000000003
      value: 000000000000000000000000000000000000003
      key: 000000004
      value: 000000000000000000000000000000000000004
      key: 000000005
      value: 000000000000000000000000000000000000005
      key: 000000006
      value: 000000000000000000000000000000000000006
      <><><><><><><><><><><><>
      

      In the current develop tree, we get:

      $ python ../bench/workgen/runner/example_simple.py --verbose
      thread thread0 running
      thread thread0finished
      
      <><><><> table:simple <><><><>
      key: 
      value: 
      <><><><><><><><><><><><>
      thread thread0 running
      GROUP operation 0 secs, 5times
      thread thread0finished
      
      <><><><> table:simple <><><><>
      key: 
      value: 
      <><><><><><><><><><><><>
      

      In the debugger, I see that every key and value has size 1, a single NULL byte. There is this comment:

          // Set the cursor for the key and value first, outside the transaction which may
          // be retried. The key and value are generated in op_run_setup.
      

      But op_run_setup is not setting the key and value for regular tables.

            Assignee:
            donald.anderson@mongodb.com Donald Anderson
            Reporter:
            donald.anderson@mongodb.com Donald Anderson
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: