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

Mirror table config not disabling btree.reverse

    • 2
    • BermudaTriangle- 2023-09-05

      When running mirror_not_turning_off_btree.reverse.CONFIG in test/format Table 3 has been set with btree.reverse=1. All tables are mirrors and therefor btree.reverse should be bulk disabled by the following code in config_mirrors:

          /* A custom collator would complicate the cursor traversal when comparing tables. */
          for (i = 1; i <= ntables; ++i)
              if (NTV(tables[i], BTREE_REVERSE) && config_explicit(tables[i], "btree.reverse")) {
                  WARN(
                    "%s", "mirroring incompatible with reverse collation, turning off reverse collation");
                  break;
              }
          config_off_all("btree.reverse"); 

      However mirror validation fails with

      [2023/08/27 22:48:22.593]     mirror: 1/1800000 mismatch: table:T00001: {0000000001.00/opqrstuvwxy}/{0000000001/b}, table:T00014: {0001800000.00/opqrstuvwxyzabcdefghijklmnop ... (message truncated due to length)}
       [2023/08/27 22:48:22.593]     last successful match was 0

      and looking at the contents of RUNDIR/FAIL.pagedump.1 and RUNDIR/FAIL.pagedump.2 Table 3 is in reverse order.

       

      The scope of this ticket is to understand why disabling of the btree.reverse is not happening and correct it.

            Assignee:
            mick.graham@mongodb.com Mick Graham
            Reporter:
            andrew.morton@mongodb.com Andrew Morton
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: