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

tiered schema_abort failure opening cursor

    • 8
    • StorEng - Refinement Pipeline

      When running test_schema_abort with tiered storage turned on (with fixes for WT-9446 in place to avoid that issue) I frequently get a failure on open_cursor:

      [1656614834:333839][12724:0x7f0dabfff700], WT_SESSION.open_cursor: [WT_VERB_DEFAULT][ERROR]: int __wt_schema_get_table_uri(WT_SESSION_IMPL *, const char *, _Bool, uint32_t, WT_TABLE **), 85: 'table:wt' cannot be used until all column groups are created: Invalid argument

      The test will create unique table names. It also repeatedly uses table:wt via create, do work, drop and then repeat (so we're reusing the same table name). This failure is in that area.

      There are a couple issues to investigate:

      1. This is happening on open_cursor after the table has apparently been successfully created. If there is a problem creating the first object session->create should have failed. If the table and first object were successfully created, then it isn't clear what is wrong here.
      2. The error message is confusing. It comes from schema_list.c:wt_schema_get_table_uri. But the message being specific to column groups is confusing. (Maybe this test is using column groups in this instance, I didn't think so but am not 100% sure.) If it is just a simple tiered table the message should be modified to work for either tiered objects or column groups.

      The command I used to see this failure is:

      ./test_schema_abort -B -T 5 -t 15

            backlog-server-storage-engines [DO NOT USE] Backlog - Storage Engines Team
            sue.loverso@mongodb.com Susan LoVerso
            0 Vote for this issue
            3 Start watching this issue