Palite segfaults in Config::open_config_parser due to calling __conn_set_key_provider

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Gone away
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: PALite
    • None
    • Storage Engines, Storage Engines - Foundations
    • SE Foundations - 2025-12-19
    • None

      Stack:

      [2025-12-05T17:07:41.724089997Z][TID:281474842427424][INFO]: Starting test_disagg_failover_perf
      [2025-12-05T17:07:41.724184381Z][TID:281474842427424][INFO]: Running with configuration: collection_count=1, key_count=1000, key_size=10, value_size    =1014, workload_shape=mixed, home_path=WT_TEST, warm_cache=false, load_copy=true, load_skip=false
      [2025-12-05T17:07:41.724207520Z][TID:281474842427424][INFO]: Data size is: 1MB
      [2025-12-05T17:07:41.724396861Z][TID:281474842427424][INFO]: wiredtiger_open config: create,cache_size=16GB,precise_checkpoint=true,extensions=[../../ext/page_log/palite/libwiredtiger_palite.so],disaggregated=(page_log=palite,role="leader",)
      [1764954461:821243][16450:0xfffff7ff0020], WT_CONNECTION.set_key_provider: [WT_VERB_DEFAULT][ERROR]: __conn_set_key_provider, 2720: key provider configuration currently not supported.: Invalid argument
      
      Program received signal SIGSEGV, Segmentation fault.
      Config::open_config_parser (this=0xaaaaaab30d40) at /home/ubuntu/other-wt/ext/page_log/palite/palite.cpp:259
      warning: Source file is more recent than executable.
      259         return hexdump(buf->data, buf->size);
      (gdb) bt
      #0  Config::open_config_parser (this=0xaaaaaab30d40)
          at /home/ubuntu/other-wt/ext/page_log/palite/palite.cpp:259
      #1  0x0000fffff7107960 in Config::Config (this=0xaaaaaab30d40, wt_api=0x16, config=0xfffffffff048)
          at /home/ubuntu/other-wt/ext/page_log/palite/palite.cpp:227
      #2  0x0000fffff7111144 in Palite::Palite (this=0xaaaaaab30cd0, home_dir=filesystem::path "WT_TEST",
          wt_api=0x16, cfg_arg=0xfffffffff048) at /home/ubuntu/other-wt/ext/page_log/palite/palite.cpp:1921
      #3  0x0000fffff711bec8 in std::make_unique<Palite, char const* const&, __wt_extension_api*&, __wt_config_arg*&> ()
          at /opt/mongodbtoolchain/revisions/8695910c32ef0ee5eecaae4c9ca515b4b6436a40/stow/gcc-v5.BVV/include/c++/14.2.0/bits/unique_ptr.h:1076
      #4  0x0000fffff70ff524 in palite_extension_init (connection=0xaaaaaaaf3df0, cfg_arg=0xfffffffff048)
          at /home/ubuntu/other-wt/ext/page_log/palite/palite.cpp:2183
      #5  0x0000fffff70ff944 in wiredtiger_extension_init (connection=0xaaaaaaaf3df0, config=0xfffffffff048)
          at /home/ubuntu/other-wt/ext/page_log/palite/palite.cpp:2228
      #6  0x0000fffff7b848ac in __conn_load_extension_int (session=session@entry=0xfffff7943010,
          path=<optimized out>, cfg=cfg@entry=0xfffffffff130, early_load=early_load@entry=false)
          at /home/ubuntu/other-wt/src/conn/conn_api.c:960
      #7  0x0000fffff7b855c0 in __conn_load_extensions (session=session@entry=0xfffff7943010,
          cfg=cfg@entry=0xfffffffff278, early_load=early_load@entry=false)
          at /home/ubuntu/other-wt/src/conn/conn_api.c:1023
      #8  0x0000fffff7b98368 in wiredtiger_open (home=<optimized out>, event_handler=0x0, config=<optimized out>,
          connectionp=0xaaaaaaadf820 <test_harness::connection_manager::instance()::_instance>)
          at /home/ubuntu/other-wt/src/conn/conn_api.c:3410
      #9  0x0000aaaaaaabf900 in test_harness::connection_manager::create (
          this=this@entry=0xaaaaaaadf820 <test_harness::connection_manager::instance()::_instance>,
          config="create,cache_size=16GB,precise_checkpoint=true,extensions=[../../ext/page_log/palite/libwiredtiger_palite.so],disaggregated=(page_log=palite,role=\"leader\",)", home="WT_TEST",
          create_log_directory=create_log_directory@entry=false, subdirectory=subdirectory@entry=false)
          at /usr/include/c++/11/bits/basic_string.h:194
      #10 0x0000aaaaaaaa871c in main (argc=<optimized out>, argv=0xfffffffff988)
          at /home/ubuntu/other-wt/test/cppsuite/tests/test_disagg_failover_perf.cpp:531
      

      Stack with assert in __conn_set_key_provider:

      [2025-12-05T17:08:48.720005185Z][TID:281474842427424][INFO]: Starting test_disagg_failover_perf
      [2025-12-05T17:08:48.720099815Z][TID:281474842427424][INFO]: Running with configuration: collection_count=1, key_count=1000, key_size=10, value_size    =1014, workload_shape=mixed, home_path=WT_TEST, warm_cache=false, load_copy=true, load_skip=false
      [2025-12-05T17:08:48.720109604Z][TID:281474842427424][INFO]: Data size is: 1MB
      [2025-12-05T17:08:48.720420857Z][TID:281474842427424][INFO]: wiredtiger_open config: create,cache_size=16GB,precise_checkpoint=true,extensions=[../../ext/page_log/palite/libwiredtiger_palite.so],disaggregated=(page_log=palite,role="leader",)
      [1764954528:793138][17035:0xfffff7ff0020], WT_CONNECTION.set_key_provider: [WT_VERB_DEFAULT][ERROR]: __conn_set_key_provider, 2718: WiredTiger assertion failed: '0'. Expression returned false
      [1764954528:793173][17035:0xfffff7ff0020], WT_CONNECTION.set_key_provider: [WT_VERB_DEFAULT][ERROR]: __wt_abort, 29: aborting WiredTiger library
      
      Program received signal SIGABRT, Aborted.
      __pthread_kill_implementation (threadid=281474842427424, signo=signo@entry=6, no_tid=no_tid@entry=0) at ./nptl/pthread_kill.c:44
      44      ./nptl/pthread_kill.c: No such file or directory.
      (gdb) bt
      #0  __pthread_kill_implementation (threadid=281474842427424, signo=signo@entry=6, no_tid=no_tid@entry=0)
          at ./nptl/pthread_kill.c:44
      #1  0x0000fffff74cf244 in __pthread_kill_internal (signo=6, threadid=<optimized out>)
          at ./nptl/pthread_kill.c:78
      #2  0x0000fffff748a67c in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
      #3  0x0000fffff7477130 in __GI_abort () at ./stdlib/abort.c:79
      #4  0x0000fffff7cb7d08 in __wt_abort (session=session@entry=0xfffff7943010)
          at /home/ubuntu/other-wt/src/os_common/os_abort.c:32
      #5  0x0000fffff7b8daf0 in __conn_set_key_provider (wt_conn=<optimized out>, key_provider=<optimized out>,
          config=<optimized out>) at /home/ubuntu/other-wt/src/conn/conn_api.c:2718
      #6  0x0000fffff70ff508 in palite_extension_init (connection=0xaaaaaaaf3df0, cfg_arg=0xfffffffff048)
          at /home/ubuntu/other-wt/ext/page_log/palite/palite.cpp:2182
      #7  0x0000fffff70ff944 in wiredtiger_extension_init (connection=0xaaaaaaaf3df0, config=0xfffffffff048)
          at /home/ubuntu/other-wt/ext/page_log/palite/palite.cpp:2228
      #8  0x0000fffff7b848ac in __conn_load_extension_int (session=session@entry=0xfffff7943010,
          path=<optimized out>, cfg=cfg@entry=0xfffffffff130, early_load=early_load@entry=false)
          at /home/ubuntu/other-wt/src/conn/conn_api.c:960
      #9  0x0000fffff7b855c0 in __conn_load_extensions (session=session@entry=0xfffff7943010,
          cfg=cfg@entry=0xfffffffff278, early_load=early_load@entry=false)
          at /home/ubuntu/other-wt/src/conn/conn_api.c:1023
      #10 0x0000fffff7b98298 in wiredtiger_open (home=<optimized out>, event_handler=0x0, config=<optimized out>,
          connectionp=0xaaaaaaadf820 <test_harness::connection_manager::instance()::_instance>)
          at /home/ubuntu/other-wt/src/conn/conn_api.c:3411
      #11 0x0000aaaaaaabf900 in test_harness::connection_manager::create (
          this=this@entry=0xaaaaaaadf820 <test_harness::connection_manager::instance()::_instance>,
          config="create,cache_size=16GB,precise_checkpoint=true,extensions=[../../ext/page_log/palite/libwiredtiger_palite.so],disaggregated=(page_log=palite,role=\"leader\",)", home="WT_TEST",
          create_log_directory=create_log_directory@entry=false, subdirectory=subdirectory@entry=false)
          at /usr/include/c++/11/bits/basic_string.h:194
      #12 0x0000aaaaaaaa871c in main (argc=<optimized out>, argv=0xfffffffff988)
          at /home/ubuntu/other-wt/test/cppsuite/tests/test_disagg_failover_perf.cpp:531
      

      To reproduce:

      ubuntu@ip-10-122-7-119:~/other-wt/build/test/cppsuite$ ./test_disagg_failover_perf -cc 1 -kc 1
      

      On branch: wt-16018

            Assignee:
            Jie Chen
            Reporter:
            Luke Pearson
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: