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

test_wt2323_join_visibility index segmentation fault with aggressive sweep server

    • Type: Icon: Bug Bug
    • Resolution: Duplicate
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: APIs
    • None
    • Storage Engines

      While testing for an aggressive sweep server following the patch build. I have encountered a segmentation fault inside the test_wt2323_join_visibility csutie test. The failure is shown as:

      [2024/06/24 15:47:40.227] MemorySanitizer:DEADLYSIGNAL
      [2024/06/24 15:47:40.227] ==117382==ERROR: MemorySanitizer: SEGV on unknown address 0x000000000000 (pc 0x7fb16989bab2 bp 0x7ffc01c4dc30 sp 0x7ffc01c4dba0 T117382)
      [2024/06/24 15:47:40.227] ==117382==The signal is caused by a READ memory access.
      [2024/06/24 15:47:40.227] ==117382==Hint: address points to the zero page.
      [2024/06/24 15:47:40.227]     #0 0x7fb16989bab1 in __wt_schema_get_index /data/mci/9ad833fb4178dba29a7a726367ef6cfd/wiredtiger/build_posix/../src/schema/schema_open.c:522:15
      [2024/06/24 15:47:40.227]     #1 0x7fb169895bfa in __drop_index /data/mci/9ad833fb4178dba29a7a726367ef6cfd/wiredtiger/build_posix/../src/schema/schema_drop.c:83:16
      [2024/06/24 15:47:40.227]     #2 0x7fb169894f97 in __schema_drop /data/mci/9ad833fb4178dba29a7a726367ef6cfd/wiredtiger/build_posix/../src/schema/schema_drop.c:227:15
      [2024/06/24 15:47:40.227]     #3 0x7fb169894c6d in __wt_schema_drop /data/mci/9ad833fb4178dba29a7a726367ef6cfd/wiredtiger/build_posix/../src/schema/schema_drop.c:263:11
      [2024/06/24 15:47:40.227]     #4 0x7fb1698c04d3 in __session_drop /data/mci/9ad833fb4178dba29a7a726367ef6cfd/wiredtiger/build_posix/../src/session/session_api.c:1110:13
      [2024/06/24 15:47:40.227]     #5 0x4962b0 in test_join /data/mci/9ad833fb4178dba29a7a726367ef6cfd/wiredtiger/build_posix/test/csuite/../../../test/csuite/wt2323_join_visibility/main.c:210:5
      [2024/06/24 15:47:40.227]     #6 0x4950f4 in main /data/mci/9ad833fb4178dba29a7a726367ef6cfd/wiredtiger/build_posix/test/csuite/../../../test/csuite/wt2323_join_visibility/main.c:121:5
      [2024/06/24 15:47:40.227]     #7 0x7fb16913e082 in __libc_start_main /build/glibc-wuryBv/glibc-2.31/csu/../csu/libc-start.c:308:16
      [2024/06/24 15:47:40.227]     #8 0x41e24d in _start (/data/mci/9ad833fb4178dba29a7a726367ef6cfd/wiredtiger/build_posix/test/csuite/test_wt2323_join_visibility+0x41e24d)
      [2024/06/24 15:47:40.227] MemorySanitizer can not provide additional info.
      [2024/06/24 15:47:40.227] SUMMARY: MemorySanitizer: SEGV /data/mci/9ad833fb4178dba29a7a726367ef6cfd/wiredtiger/build_posix/../src/schema/schema_open.c:522:15 in __wt_schema_get_index
      [2024/06/24 15:47:40.227] ==117382==ABORTING
      

      I have an opened the coredump and found the faulting line:

          /* Try to find the index in the table. */
          for (i = 0; i < table->nindices; i++) {
              idx = table->indices[i];
              if (idx != NULL && strcmp(idx->name, uri) == 0) {
                  *indexp = idx;
                  goto done;
              }
          }
      

      On the line:

        idx = table->indices[i];
      

      The coredump shows that table->indices was NULL. A brief look at the problem shows that __wt_schema_close_table frees the memory which is can be called by the sweep server.

            Assignee:
            backlog-server-storage-engines [DO NOT USE] Backlog - Storage Engines Team
            Reporter:
            jie.chen@mongodb.com Jie Chen
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: