hll1213181368 opened a new issue, #2834: URL: https://github.com/apache/kvrocks/issues/2834
### Search before asking - [x] I had searched in the [issues](https://github.com/apache/kvrocks/issues) and found no similar issues. ### Version kvrocks version is v2.11.1 Ubuntu server system ### Minimal reproduce step 1) create 10,000 Bloom filters 2) use thread pool to continuously inserting 10 elements as a List to insert every bloom filter 3) when clinet start to send request, the server report Ooops! Apache Kvrocks version 2.11.1 got signal: Segmentation fault (11) 4) error code is in src/types/redis_bloom_chain.cc 217 line. (*bf_data_list.back().GetSelf() = std::move(data);) ### What did you expect to see? kvrocks server is not crash. Many Bloom filter can madd items successfully. ### What did you see instead? E20250314 08:51:23.130433 140239787992640 signal_util.h:34] Ooops! Apache Kvrocks version 2.11.1 got signal: Segmentation fault (11) E20250314 08:53:20.326138 140239787992640 signal_util.h:36] Stack trace (most recent call first): #0 0x00005634cef284f5 in SegvHandler at /usr/local/kvrocks-v2.11.1/src/cli/signal_util.h:35 #1 0x00007f8c2a5ad51f in __GI___sigaction at /lib/x86_64-linux-gnu/libc.so.6 #2 0x00005634cfb01f79 in std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator=(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&) at /usr/local/kvrocks-v2.11.1/cmake-build-debug/kvrocks #3 0x00005634cee64ad9 in redis::BloomChain::InsertCommon(engine::Context&, rocksdb::Slice const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, redis::BloomFilterInsertOptions const&, std::vector<redis::BloomFilterAddResult, std::allocator<redis::BloomFilterAddResult> >*) at /usr/local/kvrocks-v2.11.1/src/types/[redis_bloom_chain.cc:217](http://redis_bloom_chain.cc:217/) #4 0x00005634cee64151 in redis::BloomChain::MAdd(engine::Context&, rocksdb::Slice const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::vector<redis::BloomFilterAddResult, std::allocator<redis::BloomFilterAddResult> >*) at /usr/local/kvrocks-v2.11.1/src/types/[redis_bloom_chain.cc:150](http://redis_bloom_chain.cc:150/) #5 0x00005634cea66ff0 in redis::CommandBFMAdd::Execute(engine::Context&, Server*, redis::Connection*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*) at /usr/local/kvrocks-v2.11.1/src/commands/[cmd_bloom_filter.cc:145](http://cmd_bloom_filter.cc:145/) #6 0x00005634ced7d4fb in redis::Connection::ExecuteCommand(engine::Context&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, redis::Commander*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*) at /usr/local/kvrocks-v2.11.1/src/server/[redis_connection.cc:354](http://redis_connection.cc:354/) #7 0x00005634cee1bf61 in lua::RedisGenericCommand(lua_State*, int) at /usr/local/kvrocks-v2.11.1/src/storage/[scripting.cc:821](http://scripting.cc:821/) #8 0x00005634cee1b6ba in lua::RedisCallCommand(lua_State*) at /usr/local/kvrocks-v2.11.1/src/storage/[scripting.cc:718](http://scripting.cc:718/) #9 0x00005634cfa3bb35 in lj_BC_FUNCC at /usr/local/kvrocks-v2.11.1/cmake-build-debug/kvrocks #10 0x00005634cfa1c7d8 in lua_pcall at /usr/local/kvrocks-v2.11.1/cmake-build-debug/kvrocks #11 0x00005634cee1b133 in lua::EvalGenericCommand(redis::Connection*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, bool) at /usr/local/kvrocks-v2.11.1/src/storage/[scripting.cc:677](http://scripting.cc:677/) #12 0x00005634ceb26cd1 in redis::CommandEvalImpl<false, false>::Execute(engine::Context&, Server*, redis::Connection*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*) at /usr/local/kvrocks-v2.11.1/src/commands/[cmd_script.cc:47](http://cmd_script.cc:47/) #13 0x00005634ced7d4fb in redis::Connection::ExecuteCommand(engine::Context&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, redis::Commander*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*) at /usr/local/kvrocks-v2.11.1/src/server/[redis_connection.cc:354](http://redis_connection.cc:354/) #14 0x00005634ced7ed7b in redis::Connection::ExecuteCommands(std::deque<std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::allocator<std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > >*) at /usr/local/kvrocks-v2.11.1/src/server/[redis_connection.cc:542](http://redis_connection.cc:542/) #15 0x00005634ced7b938 in redis::Connection::OnRead(bufferevent*) at /usr/local/kvrocks-v2.11.1/src/server/[redis_connection.cc:96](http://redis_connection.cc:96/) #16 0x00005634cea55999 in EvbufCallbackBase<redis::Connection, true, true, true>::readCB(bufferevent*, void*) at /usr/local/kvrocks-v2.11.1/src/common/event_util.h:73 #17 0x00005634cf8e207a in bufferevent_run_deferred_callbacks_unlocked at /usr/local/kvrocks-v2.11.1/cmake-build-debug/_deps/libevent-src/bufferevent.c:208 #18 0x00005634cf8ebd60 in event_process_active_single_queue at /usr/local/kvrocks-v2.11.1/cmake-build-debug/_deps/libevent-src/event.c:1697 #19 0x00005634cf8ec21a in event_process_active at /usr/local/kvrocks-v2.11.1/cmake-build-debug/_deps/libevent-src/event.c:1783 #20 0x00005634cf8ec94e in event_base_loop at /usr/local/kvrocks-v2.11.1/cmake-build-debug/_deps/libevent-src/event.c:2006 #21 0x00005634cf8ec2be in event_base_dispatch at /usr/local/kvrocks-v2.11.1/cmake-build-debug/_deps/libevent-src/event.c:1817 #22 0x00005634cedc19e1 in Worker::Run(std::thread::id) at /usr/local/kvrocks-v2.11.1/src/server/[worker.cc:314](http://worker.cc:314/) #23 0x00005634cedc33f8 in WorkerThread::Start()::{lambda()#1}::operator()() const at /usr/local/kvrocks-v2.11.1/src/server/[worker.cc:577](http://worker.cc:577/) #24 0x00005634cedc4448 in util::CreateThread<WorkerThread::Start()::{lambda()#1}>(char const*, WorkerThread::Start()::{lambda()#1})::{lambda()#1}::operator()() const at /usr/local/kvrocks-v2.11.1/src/common/thread_util.h:38 #25 0x00005634cedc95e6 in void std::__invoke_impl<void, util::CreateThread<WorkerThread::Start()::{lambda()#1}>(char const*, WorkerThread::Start()::{lambda()#1})::{lambda()#1}>(std::__invoke_other, util::CreateThread<WorkerThread::Start()::{lambda()#1}>(char const*, WorkerThread::Start()::{lambda()#1})::{lambda()#1}&&) at /usr/include/c++/11/bits/invoke.h:61 #26 0x00005634cedc95a9 in std::__invoke_result<util::CreateThread<WorkerThread::Start()::{lambda()#1}>(char const*, WorkerThread::Start()::{lambda()#1})::{lambda()#1}>::type std::__invoke<util::CreateThread<WorkerThread::Start()::{lambda()#1}>(char const*, WorkerThread::Start()::{lambda()#1})::{lambda()#1}>(util::CreateThread<WorkerThread::Start()::{lambda()#1}>(char const*, WorkerThread::Start()::{lambda()#1})::{lambda()#1}&&) at /usr/include/c++/11/bits/invoke.h:96 #27 0x00005634cedc9557 in void std::thread::_Invoker<std::tuple<util::CreateThread<WorkerThread::Start()::{lambda()#1}>(char const*, WorkerThread::Start()::{lambda()#1})::{lambda()#1}> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) at /usr/include/c++/11/bits/std_thread.h:259 #28 0x00005634cedc952d in std::thread::_Invoker<std::tuple<util::CreateThread<WorkerThread::Start()::{lambda()#1}>(char const*, WorkerThread::Start()::{lambda()#1})::{lambda()#1}> >::operator()() at /usr/include/c++/11/bits/std_thread.h:266 #29 0x00005634cedc9513 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<util::CreateThread<WorkerThread::Start()::{lambda()#1}>(char const*, WorkerThread::Start()::{lambda()#1})::{lambda()#1}> > >::_M_run() at /usr/include/c++/11/bits/std_thread.h:211 #30 0x00005634cfb04a83 in execute_native_thread_routine at thread.o #31 0x00007f8c2a5ffac2 in start_thread at ./nptl/pthread_create.c:442 #32 0x00007f8c2a69184f in __clone3 at ./misc/../sysdeps/unix/sysv/linux/x86_64/clone3.S:81 E20250314 08:53:20.327138 140239787992640 signal_util.h:37] It would be greatly appreciated if you could submit this crash to https://github.com/apache/kvrocks/issues along with the stacktrace above, logs and any relevant information. Process finished with exit code 139 (interrupted by signal 11:SIGSEGV) created 10,000 Bloom filters, use threadpool to continuously inserting 10 elements in batches. when server start, report "Ooops! Apache Kvrocks version 2.11.1 got signal: Segmentation fault (11)" ### Anything Else? _No response_ ### Are you willing to submit a PR? - [x] I'm willing to submit a PR! -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
