test: Drop `deadlock:libdb` TSan suppression #27658

pull hebasto wants to merge 1 commits into bitcoin:master from hebasto:230515-deadlock changing 1 files +0 −1
  1. hebasto commented at 8:45 AM on May 15, 2023: member

    I'm not able to reproduce the TSan's "lock-order-inversion (potential deadlock)" warning for libdb for 24.x, 25.x and master branches neither in CI nor in different local environments (Ubuntu, Fedora).

    If Tsan complains again, we can obtain a call stack from TSan, and this change can be easily reverted back.

    Noticed while reviewing #27556.

  2. test: Drop `deadlock:libdb` TSan suppression d2cac68810
  3. DrahtBot commented at 8:45 AM on May 15, 2023: contributor

    <!--e57a25ab6845829454e8d69fc972939a-->

    The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

    <!--021abf342d371248e50ceaed478a90ca-->

    Reviews

    See the guideline for information on the review process.

    Type Reviewers
    Concept NACK fanquake

    If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.

  4. DrahtBot added the label Tests on May 15, 2023
  5. DrahtBot added the label CI failed on May 15, 2023
  6. maflcko commented at 10:59 AM on May 15, 2023: member

    Steps to reproduce on a fresh install of OpenSuse Tumbleweed (registry.opensuse.org/opensuse/tumbleweed:latest):

    zypper in -y libevent-devel boost-devel sqlite3-devel libqt5-qttools-devel libqt5-qtbase-devel libdb-4_8-devel      find bison gcc-c++ libtool make autoconf automake python3 clang llvm lbzip2 patch xz      curl wget htop git vim ccache  && git clone https://github.com/bitcoin/bitcoin.git  --depth=1 ./bitcoin-core && cd bitcoin-core &&    ./autogen.sh &&  ./configure CC=clang CXX=clang++ --disable-tests --disable-bench --with-sanitizers=thread  && make -j $(nproc)
    git fetch origin d2cac68810b2f347b6412ac36e215fabf859ba5b
    git show d2cac68810b2f347b6412ac36e215fabf859ba5b |git  apply
    export TSAN_OPTIONS="suppressions=$(pwd)/test/sanitizer_suppressions/tsan:halt_on_error=1:second_deadlock_stack=1"
    ./test/functional/test_runner.py -j $(nproc)
    
     node0 2023-05-15T10:55:57.402243Z [httpworker.2] [noui.cpp:56] [noui_InitMessage] init message: Loading wallet… 
     test  2023-05-15T10:55:57.908000Z TestFramework (ERROR): Unexpected exception caught during testing 
                                       Traceback (most recent call last):
                                         File "/bitcoin-core/test/functional/test_framework/test_framework.py", line 131, in main
                                           self.setup()
                                         File "/bitcoin-core/test/functional/test_framework/test_framework.py", line 298, in setup
                                           self.setup_network()
                                         File "/bitcoin-core/test/functional/test_framework/test_framework.py", line 392, in setup_network
                                           self.setup_nodes()
                                         File "/bitcoin-core/test/functional/test_framework/test_framework.py", line 416, in setup_nodes
                                           self.import_deterministic_coinbase_privkeys()
                                         File "/bitcoin-core/test/functional/test_framework/test_framework.py", line 433, in import_deterministic_coinbase_privkeys
                                           self.init_wallet(node=i)
                                         File "/bitcoin-core/test/functional/test_framework/test_framework.py", line 440, in init_wallet
                                           n.createwallet(wallet_name=wallet_name, descriptors=self.options.descriptors, load_on_startup=True)
                                         File "/bitcoin-core/test/functional/test_framework/test_node.py", line 778, in createwallet
                                           return self.__getattr__('createwallet')(wallet_name, disable_private_keys, blank, passphrase, avoid_reuse, descriptors, load_on_startup, external_signer)
                                         File "/bitcoin-core/test/functional/test_framework/coverage.py", line 49, in __call__
                                           return_val = self.auth_service_proxy_instance.__call__(*args, **kwargs)
                                         File "/bitcoin-core/test/functional/test_framework/authproxy.py", line 124, in __call__
                                           response, status = self._request('POST', self.__url.path, postdata.encode('utf-8'))
                                         File "/bitcoin-core/test/functional/test_framework/authproxy.py", line 103, in _request
                                           return self._get_response()
                                         File "/bitcoin-core/test/functional/test_framework/authproxy.py", line 148, in _get_response
                                           http_response = self.__conn.getresponse()
                                         File "/usr/lib64/python3.10/http/client.py", line 1374, in getresponse
                                           response.begin()
                                         File "/usr/lib64/python3.10/http/client.py", line 318, in begin
                                           version, status, reason = self._read_status()
                                         File "/usr/lib64/python3.10/http/client.py", line 287, in _read_status
                                           raise RemoteDisconnected("Remote end closed connection without"
                                       http.client.RemoteDisconnected: Remote end closed connection without response
     test  2023-05-15T10:55:57.910000Z TestFramework (DEBUG): Closing down network thread 
     test  2023-05-15T10:55:57.960000Z TestFramework (INFO): Stopping nodes 
     test  2023-05-15T10:55:57.961000Z TestFramework.node0 (DEBUG): Stopping node 
    
     node0 stderr ==================
    WARNING: ThreadSanitizer: lock-order-inversion (potential deadlock) (pid=25729)
      Cycle in lock order graph: M0 (0x7f5ad5b6f380) => M1 (0x7f5ad5b73670) => M2 (0x7f5ad5b73808) => M0
    
      Mutex M1 acquired here while holding mutex M0 in thread T12:
        [#0](/bitcoin-bitcoin/0/) pthread_rwlock_wrlock /home/abuild/rpmbuild/BUILD/llvm-16.0.3.src/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:1532:3 (bitcoind+0xc17fb) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#1](/bitcoin-bitcoin/1/) __db_pthread_mutex_lock <null> (libdb_cxx-4.8.so+0x424aa) (BuildId: 78015441865958bf80e112ff259ff60c0eae5adf)
        [#2](/bitcoin-bitcoin/2/) wallet::BerkeleyBatch::BerkeleyBatch(wallet::BerkeleyDatabase&, bool, bool) src/wallet/bdb.cpp:325:14 (bitcoind+0x838dcf) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#3](/bitcoin-bitcoin/3/) std::__detail::_MakeUniq<wallet::BerkeleyBatch>::__single_object std::make_unique<wallet::BerkeleyBatch, wallet::BerkeleyDatabase&, bool, bool&>(wallet::BerkeleyDatabase&, bool&&, bool&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/unique_ptr.h:1070:34 (bitcoind+0x8419f7) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#4](/bitcoin-bitcoin/4/) wallet::BerkeleyDatabase::MakeBatch(bool) src/wallet/bdb.cpp:863:12 (bitcoind+0x8419f7)
        [#5](/bitcoin-bitcoin/5/) wallet::WalletBatch::WalletBatch(wallet::WalletDatabase&, bool) src/./wallet/walletdb.h:220:26 (bitcoind+0x7b559c) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#6](/bitcoin-bitcoin/6/) wallet::CWallet::LoadWallet() src/wallet/wallet.cpp:2321:31 (bitcoind+0x7b559c)
        [#7](/bitcoin-bitcoin/7/) wallet::CWallet::Create(wallet::WalletContext&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::unique_ptr<wallet::WalletDatabase, std::default_delete<wallet::WalletDatabase>>, unsigned long, bilingual_str&, std::vector<bilingual_str, std::allocator<bilingual_str>>&) src/wallet/wallet.cpp:2885:47 (bitcoind+0x796cca) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#8](/bitcoin-bitcoin/8/) wallet::CreateWallet(wallet::WalletContext&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::optional<bool>, wallet::DatabaseOptions&, wallet::DatabaseStatus&, bilingual_str&, std::vector<bilingual_str, std::allocator<bilingual_str>>&) src/wallet/wallet.cpp:380:39 (bitcoind+0x7938ca) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#9](/bitcoin-bitcoin/9/) wallet::createwallet()::$_0::operator()(RPCHelpMan const&, JSONRPCRequest const&) const src/wallet/rpc/wallet.cpp:423:45 (bitcoind+0x712da1) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#10](/bitcoin-bitcoin/10/) UniValue std::__invoke_impl<UniValue, wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&>(std::__invoke_other, wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x712da1)
        [#11](/bitcoin-bitcoin/11/) std::enable_if<is_invocable_r_v<UniValue, wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&>, UniValue>::type std::__invoke_r<UniValue, wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&>(wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x712da1)
        [#12](/bitcoin-bitcoin/12/) std::_Function_handler<UniValue (RPCHelpMan const&, JSONRPCRequest const&), wallet::createwallet()::$_0>::_M_invoke(std::_Any_data const&, RPCHelpMan const&, JSONRPCRequest const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x712da1)
        [#13](/bitcoin-bitcoin/13/) std::function<UniValue (RPCHelpMan const&, JSONRPCRequest const&)>::operator()(RPCHelpMan const&, JSONRPCRequest const&) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0xa7f205) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#14](/bitcoin-bitcoin/14/) RPCHelpMan::HandleRequest(JSONRPCRequest const&) const src/rpc/util.cpp:570:20 (bitcoind+0xa7f205)
        [#15](/bitcoin-bitcoin/15/) CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)::operator()(JSONRPCRequest const&, UniValue&, bool) const src/./rpc/server.h:109:91 (bitcoind+0x3ab4b7) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#16](/bitcoin-bitcoin/16/) bool std::__invoke_impl<bool, CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(std::__invoke_other, CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x3ab377) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#17](/bitcoin-bitcoin/17/) std::enable_if<is_invocable_r_v<bool, CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>, bool>::type std::__invoke_r<bool, CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x3ab377)
        [#18](/bitcoin-bitcoin/18/) std::_Function_handler<bool (JSONRPCRequest const&, UniValue&, bool), CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)>::_M_invoke(std::_Any_data const&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x3ab377)
        [#19](/bitcoin-bitcoin/19/) std::function<bool (JSONRPCRequest const&, UniValue&, bool)>::operator()(JSONRPCRequest const&, UniValue&, bool) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0x6cd7fb) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#20](/bitcoin-bitcoin/20/) wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)::operator()(JSONRPCRequest const&, UniValue&, bool) const src/wallet/interfaces.cpp:580:24 (bitcoind+0x6cd7fb)
        [#21](/bitcoin-bitcoin/21/) bool std::__invoke_impl<bool, wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(std::__invoke_other, wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x6cd7fb)
        [#22](/bitcoin-bitcoin/22/) std::enable_if<is_invocable_r_v<bool, wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>, bool>::type std::__invoke_r<bool, wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x6cd7fb)
        [#23](/bitcoin-bitcoin/23/) std::_Function_handler<bool (JSONRPCRequest const&, UniValue&, bool), wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)>::_M_invoke(std::_Any_data const&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x6cd7fb)
        [#24](/bitcoin-bitcoin/24/) std::function<bool (JSONRPCRequest const&, UniValue&, bool)>::operator()(JSONRPCRequest const&, UniValue&, bool) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0x2ee80a) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#25](/bitcoin-bitcoin/25/) node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)::operator()(JSONRPCRequest const&, UniValue&, bool) const src/node/interfaces.cpp:473:24 (bitcoind+0x2ee80a)
        [#26](/bitcoin-bitcoin/26/) bool std::__invoke_impl<bool, node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(std::__invoke_other, node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x2ee80a)
        [#27](/bitcoin-bitcoin/27/) std::enable_if<is_invocable_r_v<bool, node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>, bool>::type std::__invoke_r<bool, node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x2ee80a)
        [#28](/bitcoin-bitcoin/28/) std::_Function_handler<bool (JSONRPCRequest const&, UniValue&, bool), node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)>::_M_invoke(std::_Any_data const&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x2ee80a)
        [#29](/bitcoin-bitcoin/29/) std::function<bool (JSONRPCRequest const&, UniValue&, bool)>::operator()(JSONRPCRequest const&, UniValue&, bool) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0x4fc028) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#30](/bitcoin-bitcoin/30/) ExecuteCommand(CRPCCommand const&, JSONRPCRequest const&, UniValue&, bool) src/rpc/server.cpp:507:20 (bitcoind+0x4fc028)
        [#31](/bitcoin-bitcoin/31/) ExecuteCommands(std::vector<CRPCCommand const*, std::allocator<CRPCCommand const*>> const&, JSONRPCRequest const&, UniValue&) src/rpc/server.cpp:472:13 (bitcoind+0x4fc028)
        [#32](/bitcoin-bitcoin/32/) CRPCTable::execute(JSONRPCRequest const&) const src/rpc/server.cpp:492:13 (bitcoind+0x4fbbd6) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#33](/bitcoin-bitcoin/33/) HTTPReq_JSONRPC(std::any const&, HTTPRequest*) src/httprpc.cpp:202:40 (bitcoind+0x665e05) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#34](/bitcoin-bitcoin/34/) StartHTTPRPC(std::any const&)::$_0::operator()(HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) const src/httprpc.cpp:301:80 (bitcoind+0x665e05)
        [#35](/bitcoin-bitcoin/35/) bool std::__invoke_impl<bool, StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>(std::__invoke_other, StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x665e05)
        [#36](/bitcoin-bitcoin/36/) std::enable_if<is_invocable_r_v<bool, StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>, bool>::type std::__invoke_r<bool, StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>(StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x665e05)
        [#37](/bitcoin-bitcoin/37/) std::_Function_handler<bool (HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&), StartHTTPRPC(std::any const&)::$_0>::_M_invoke(std::_Any_data const&, HTTPRequest*&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x665e05)
        [#38](/bitcoin-bitcoin/38/) std::function<bool (HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)>::operator()(HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0x67a84d) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#39](/bitcoin-bitcoin/39/) HTTPWorkItem::operator()() src/httpserver.cpp:60:9 (bitcoind+0x67a84d)
        [#40](/bitcoin-bitcoin/40/) WorkQueue<HTTPClosure>::Run() src/httpserver.cpp:115:13 (bitcoind+0x67b9f2) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#41](/bitcoin-bitcoin/41/) HTTPWorkQueueRun(WorkQueue<HTTPClosure>*, int) src/httpserver.cpp:358:12 (bitcoind+0x672c07) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#42](/bitcoin-bitcoin/42/) void std::__invoke_impl<void, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(std::__invoke_other, void (*&&)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*&&, int&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x67c6c7) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#43](/bitcoin-bitcoin/43/) std::__invoke_result<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>::type std::__invoke<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(void (*&&)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*&&, int&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:96:14 (bitcoind+0x67c6c7)
        [#44](/bitcoin-bitcoin/44/) void std::thread::_Invoker<std::tuple<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>::_M_invoke<0ul, 1ul, 2ul>(std::_Index_tuple<0ul, 1ul, 2ul>) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_thread.h:292:13 (bitcoind+0x67c6c7)
        [#45](/bitcoin-bitcoin/45/) std::thread::_Invoker<std::tuple<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>::operator()() /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_thread.h:299:11 (bitcoind+0x67c6c7)
        [#46](/bitcoin-bitcoin/46/) std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>>::_M_run() /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_thread.h:244:13 (bitcoind+0x67c6c7)
        [#47](/bitcoin-bitcoin/47/) <null> <null> (libstdc++.so.6+0xe89b2) (BuildId: 35053d77606acdc55c2e290e966db2e83980b43c)
    
      Mutex M0 previously acquired by the same thread here:
        [#0](/bitcoin-bitcoin/0/) pthread_rwlock_wrlock /home/abuild/rpmbuild/BUILD/llvm-16.0.3.src/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:1532:3 (bitcoind+0xc17fb) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#1](/bitcoin-bitcoin/1/) __db_pthread_mutex_lock <null> (libdb_cxx-4.8.so+0x424aa) (BuildId: 78015441865958bf80e112ff259ff60c0eae5adf)
        [#2](/bitcoin-bitcoin/2/) wallet::BerkeleyBatch::BerkeleyBatch(wallet::BerkeleyDatabase&, bool, bool) src/wallet/bdb.cpp:325:14 (bitcoind+0x838dcf) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#3](/bitcoin-bitcoin/3/) std::__detail::_MakeUniq<wallet::BerkeleyBatch>::__single_object std::make_unique<wallet::BerkeleyBatch, wallet::BerkeleyDatabase&, bool, bool&>(wallet::BerkeleyDatabase&, bool&&, bool&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/unique_ptr.h:1070:34 (bitcoind+0x8419f7) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#4](/bitcoin-bitcoin/4/) wallet::BerkeleyDatabase::MakeBatch(bool) src/wallet/bdb.cpp:863:12 (bitcoind+0x8419f7)
        [#5](/bitcoin-bitcoin/5/) wallet::WalletBatch::WalletBatch(wallet::WalletDatabase&, bool) src/./wallet/walletdb.h:220:26 (bitcoind+0x7b559c) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#6](/bitcoin-bitcoin/6/) wallet::CWallet::LoadWallet() src/wallet/wallet.cpp:2321:31 (bitcoind+0x7b559c)
        [#7](/bitcoin-bitcoin/7/) wallet::CWallet::Create(wallet::WalletContext&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::unique_ptr<wallet::WalletDatabase, std::default_delete<wallet::WalletDatabase>>, unsigned long, bilingual_str&, std::vector<bilingual_str, std::allocator<bilingual_str>>&) src/wallet/wallet.cpp:2885:47 (bitcoind+0x796cca) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#8](/bitcoin-bitcoin/8/) wallet::CreateWallet(wallet::WalletContext&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::optional<bool>, wallet::DatabaseOptions&, wallet::DatabaseStatus&, bilingual_str&, std::vector<bilingual_str, std::allocator<bilingual_str>>&) src/wallet/wallet.cpp:380:39 (bitcoind+0x7938ca) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#9](/bitcoin-bitcoin/9/) wallet::createwallet()::$_0::operator()(RPCHelpMan const&, JSONRPCRequest const&) const src/wallet/rpc/wallet.cpp:423:45 (bitcoind+0x712da1) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#10](/bitcoin-bitcoin/10/) UniValue std::__invoke_impl<UniValue, wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&>(std::__invoke_other, wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x712da1)
        [#11](/bitcoin-bitcoin/11/) std::enable_if<is_invocable_r_v<UniValue, wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&>, UniValue>::type std::__invoke_r<UniValue, wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&>(wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x712da1)
        [#12](/bitcoin-bitcoin/12/) std::_Function_handler<UniValue (RPCHelpMan const&, JSONRPCRequest const&), wallet::createwallet()::$_0>::_M_invoke(std::_Any_data const&, RPCHelpMan const&, JSONRPCRequest const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x712da1)
        [#13](/bitcoin-bitcoin/13/) std::function<UniValue (RPCHelpMan const&, JSONRPCRequest const&)>::operator()(RPCHelpMan const&, JSONRPCRequest const&) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0xa7f205) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#14](/bitcoin-bitcoin/14/) RPCHelpMan::HandleRequest(JSONRPCRequest const&) const src/rpc/util.cpp:570:20 (bitcoind+0xa7f205)
        [#15](/bitcoin-bitcoin/15/) CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)::operator()(JSONRPCRequest const&, UniValue&, bool) const src/./rpc/server.h:109:91 (bitcoind+0x3ab4b7) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#16](/bitcoin-bitcoin/16/) bool std::__invoke_impl<bool, CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(std::__invoke_other, CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x3ab377) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#17](/bitcoin-bitcoin/17/) std::enable_if<is_invocable_r_v<bool, CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>, bool>::type std::__invoke_r<bool, CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x3ab377)
        [#18](/bitcoin-bitcoin/18/) std::_Function_handler<bool (JSONRPCRequest const&, UniValue&, bool), CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)>::_M_invoke(std::_Any_data const&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x3ab377)
        [#19](/bitcoin-bitcoin/19/) std::function<bool (JSONRPCRequest const&, UniValue&, bool)>::operator()(JSONRPCRequest const&, UniValue&, bool) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0x6cd7fb) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#20](/bitcoin-bitcoin/20/) wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)::operator()(JSONRPCRequest const&, UniValue&, bool) const src/wallet/interfaces.cpp:580:24 (bitcoind+0x6cd7fb)
        [#21](/bitcoin-bitcoin/21/) bool std::__invoke_impl<bool, wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(std::__invoke_other, wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x6cd7fb)
        [#22](/bitcoin-bitcoin/22/) std::enable_if<is_invocable_r_v<bool, wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>, bool>::type std::__invoke_r<bool, wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x6cd7fb)
        [#23](/bitcoin-bitcoin/23/) std::_Function_handler<bool (JSONRPCRequest const&, UniValue&, bool), wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)>::_M_invoke(std::_Any_data const&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x6cd7fb)
        [#24](/bitcoin-bitcoin/24/) std::function<bool (JSONRPCRequest const&, UniValue&, bool)>::operator()(JSONRPCRequest const&, UniValue&, bool) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0x2ee80a) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#25](/bitcoin-bitcoin/25/) node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)::operator()(JSONRPCRequest const&, UniValue&, bool) const src/node/interfaces.cpp:473:24 (bitcoind+0x2ee80a)
        [#26](/bitcoin-bitcoin/26/) bool std::__invoke_impl<bool, node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(std::__invoke_other, node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x2ee80a)
        [#27](/bitcoin-bitcoin/27/) std::enable_if<is_invocable_r_v<bool, node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>, bool>::type std::__invoke_r<bool, node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x2ee80a)
        [#28](/bitcoin-bitcoin/28/) std::_Function_handler<bool (JSONRPCRequest const&, UniValue&, bool), node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)>::_M_invoke(std::_Any_data const&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x2ee80a)
        [#29](/bitcoin-bitcoin/29/) std::function<bool (JSONRPCRequest const&, UniValue&, bool)>::operator()(JSONRPCRequest const&, UniValue&, bool) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0x4fc028) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#30](/bitcoin-bitcoin/30/) ExecuteCommand(CRPCCommand const&, JSONRPCRequest const&, UniValue&, bool) src/rpc/server.cpp:507:20 (bitcoind+0x4fc028)
        [#31](/bitcoin-bitcoin/31/) ExecuteCommands(std::vector<CRPCCommand const*, std::allocator<CRPCCommand const*>> const&, JSONRPCRequest const&, UniValue&) src/rpc/server.cpp:472:13 (bitcoind+0x4fc028)
        [#32](/bitcoin-bitcoin/32/) CRPCTable::execute(JSONRPCRequest const&) const src/rpc/server.cpp:492:13 (bitcoind+0x4fbbd6) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#33](/bitcoin-bitcoin/33/) HTTPReq_JSONRPC(std::any const&, HTTPRequest*) src/httprpc.cpp:202:40 (bitcoind+0x665e05) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#34](/bitcoin-bitcoin/34/) StartHTTPRPC(std::any const&)::$_0::operator()(HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) const src/httprpc.cpp:301:80 (bitcoind+0x665e05)
        [#35](/bitcoin-bitcoin/35/) bool std::__invoke_impl<bool, StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>(std::__invoke_other, StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x665e05)
        [#36](/bitcoin-bitcoin/36/) std::enable_if<is_invocable_r_v<bool, StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>, bool>::type std::__invoke_r<bool, StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>(StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x665e05)
        [#37](/bitcoin-bitcoin/37/) std::_Function_handler<bool (HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&), StartHTTPRPC(std::any const&)::$_0>::_M_invoke(std::_Any_data const&, HTTPRequest*&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x665e05)
        [#38](/bitcoin-bitcoin/38/) std::function<bool (HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)>::operator()(HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0x67a84d) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#39](/bitcoin-bitcoin/39/) HTTPWorkItem::operator()() src/httpserver.cpp:60:9 (bitcoind+0x67a84d)
        [#40](/bitcoin-bitcoin/40/) WorkQueue<HTTPClosure>::Run() src/httpserver.cpp:115:13 (bitcoind+0x67b9f2) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#41](/bitcoin-bitcoin/41/) HTTPWorkQueueRun(WorkQueue<HTTPClosure>*, int) src/httpserver.cpp:358:12 (bitcoind+0x672c07) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#42](/bitcoin-bitcoin/42/) void std::__invoke_impl<void, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(std::__invoke_other, void (*&&)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*&&, int&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x67c6c7) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#43](/bitcoin-bitcoin/43/) std::__invoke_result<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>::type std::__invoke<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(void (*&&)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*&&, int&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:96:14 (bitcoind+0x67c6c7)
        [#44](/bitcoin-bitcoin/44/) void std::thread::_Invoker<std::tuple<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>::_M_invoke<0ul, 1ul, 2ul>(std::_Index_tuple<0ul, 1ul, 2ul>) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_thread.h:292:13 (bitcoind+0x67c6c7)
        [#45](/bitcoin-bitcoin/45/) std::thread::_Invoker<std::tuple<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>::operator()() /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_thread.h:299:11 (bitcoind+0x67c6c7)
        [#46](/bitcoin-bitcoin/46/) std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>>::_M_run() /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_thread.h:244:13 (bitcoind+0x67c6c7)
        [#47](/bitcoin-bitcoin/47/) <null> <null> (libstdc++.so.6+0xe89b2) (BuildId: 35053d77606acdc55c2e290e966db2e83980b43c)
    
      Mutex M2 acquired here while holding mutex M1 in thread T12:
        [#0](/bitcoin-bitcoin/0/) pthread_rwlock_wrlock /home/abuild/rpmbuild/BUILD/llvm-16.0.3.src/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:1532:3 (bitcoind+0xc17fb) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#1](/bitcoin-bitcoin/1/) __db_pthread_mutex_lock <null> (libdb_cxx-4.8.so+0x424aa) (BuildId: 78015441865958bf80e112ff259ff60c0eae5adf)
        [#2](/bitcoin-bitcoin/2/) wallet::BerkeleyBatch::BerkeleyBatch(wallet::BerkeleyDatabase&, bool, bool) src/wallet/bdb.cpp:325:14 (bitcoind+0x838dcf) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#3](/bitcoin-bitcoin/3/) std::__detail::_MakeUniq<wallet::BerkeleyBatch>::__single_object std::make_unique<wallet::BerkeleyBatch, wallet::BerkeleyDatabase&, bool, bool&>(wallet::BerkeleyDatabase&, bool&&, bool&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/unique_ptr.h:1070:34 (bitcoind+0x8419f7) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#4](/bitcoin-bitcoin/4/) wallet::BerkeleyDatabase::MakeBatch(bool) src/wallet/bdb.cpp:863:12 (bitcoind+0x8419f7)
        [#5](/bitcoin-bitcoin/5/) wallet::WalletBatch::WalletBatch(wallet::WalletDatabase&, bool) src/./wallet/walletdb.h:220:26 (bitcoind+0x7b559c) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#6](/bitcoin-bitcoin/6/) wallet::CWallet::LoadWallet() src/wallet/wallet.cpp:2321:31 (bitcoind+0x7b559c)
        [#7](/bitcoin-bitcoin/7/) wallet::CWallet::Create(wallet::WalletContext&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::unique_ptr<wallet::WalletDatabase, std::default_delete<wallet::WalletDatabase>>, unsigned long, bilingual_str&, std::vector<bilingual_str, std::allocator<bilingual_str>>&) src/wallet/wallet.cpp:2885:47 (bitcoind+0x796cca) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#8](/bitcoin-bitcoin/8/) wallet::CreateWallet(wallet::WalletContext&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::optional<bool>, wallet::DatabaseOptions&, wallet::DatabaseStatus&, bilingual_str&, std::vector<bilingual_str, std::allocator<bilingual_str>>&) src/wallet/wallet.cpp:380:39 (bitcoind+0x7938ca) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#9](/bitcoin-bitcoin/9/) wallet::createwallet()::$_0::operator()(RPCHelpMan const&, JSONRPCRequest const&) const src/wallet/rpc/wallet.cpp:423:45 (bitcoind+0x712da1) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#10](/bitcoin-bitcoin/10/) UniValue std::__invoke_impl<UniValue, wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&>(std::__invoke_other, wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x712da1)
        [#11](/bitcoin-bitcoin/11/) std::enable_if<is_invocable_r_v<UniValue, wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&>, UniValue>::type std::__invoke_r<UniValue, wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&>(wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x712da1)
        [#12](/bitcoin-bitcoin/12/) std::_Function_handler<UniValue (RPCHelpMan const&, JSONRPCRequest const&), wallet::createwallet()::$_0>::_M_invoke(std::_Any_data const&, RPCHelpMan const&, JSONRPCRequest const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x712da1)
        [#13](/bitcoin-bitcoin/13/) std::function<UniValue (RPCHelpMan const&, JSONRPCRequest const&)>::operator()(RPCHelpMan const&, JSONRPCRequest const&) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0xa7f205) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#14](/bitcoin-bitcoin/14/) RPCHelpMan::HandleRequest(JSONRPCRequest const&) const src/rpc/util.cpp:570:20 (bitcoind+0xa7f205)
        [#15](/bitcoin-bitcoin/15/) CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)::operator()(JSONRPCRequest const&, UniValue&, bool) const src/./rpc/server.h:109:91 (bitcoind+0x3ab4b7) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#16](/bitcoin-bitcoin/16/) bool std::__invoke_impl<bool, CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(std::__invoke_other, CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x3ab377) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#17](/bitcoin-bitcoin/17/) std::enable_if<is_invocable_r_v<bool, CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>, bool>::type std::__invoke_r<bool, CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x3ab377)
        [#18](/bitcoin-bitcoin/18/) std::_Function_handler<bool (JSONRPCRequest const&, UniValue&, bool), CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)>::_M_invoke(std::_Any_data const&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x3ab377)
        [#19](/bitcoin-bitcoin/19/) std::function<bool (JSONRPCRequest const&, UniValue&, bool)>::operator()(JSONRPCRequest const&, UniValue&, bool) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0x6cd7fb) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#20](/bitcoin-bitcoin/20/) wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)::operator()(JSONRPCRequest const&, UniValue&, bool) const src/wallet/interfaces.cpp:580:24 (bitcoind+0x6cd7fb)
        [#21](/bitcoin-bitcoin/21/) bool std::__invoke_impl<bool, wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(std::__invoke_other, wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x6cd7fb)
        [#22](/bitcoin-bitcoin/22/) std::enable_if<is_invocable_r_v<bool, wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>, bool>::type std::__invoke_r<bool, wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x6cd7fb)
        [#23](/bitcoin-bitcoin/23/) std::_Function_handler<bool (JSONRPCRequest const&, UniValue&, bool), wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)>::_M_invoke(std::_Any_data const&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x6cd7fb)
        [#24](/bitcoin-bitcoin/24/) std::function<bool (JSONRPCRequest const&, UniValue&, bool)>::operator()(JSONRPCRequest const&, UniValue&, bool) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0x2ee80a) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#25](/bitcoin-bitcoin/25/) node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)::operator()(JSONRPCRequest const&, UniValue&, bool) const src/node/interfaces.cpp:473:24 (bitcoind+0x2ee80a)
        [#26](/bitcoin-bitcoin/26/) bool std::__invoke_impl<bool, node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(std::__invoke_other, node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x2ee80a)
        [#27](/bitcoin-bitcoin/27/) std::enable_if<is_invocable_r_v<bool, node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>, bool>::type std::__invoke_r<bool, node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x2ee80a)
        [#28](/bitcoin-bitcoin/28/) std::_Function_handler<bool (JSONRPCRequest const&, UniValue&, bool), node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)>::_M_invoke(std::_Any_data const&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x2ee80a)
        [#29](/bitcoin-bitcoin/29/) std::function<bool (JSONRPCRequest const&, UniValue&, bool)>::operator()(JSONRPCRequest const&, UniValue&, bool) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0x4fc028) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#30](/bitcoin-bitcoin/30/) ExecuteCommand(CRPCCommand const&, JSONRPCRequest const&, UniValue&, bool) src/rpc/server.cpp:507:20 (bitcoind+0x4fc028)
        [#31](/bitcoin-bitcoin/31/) ExecuteCommands(std::vector<CRPCCommand const*, std::allocator<CRPCCommand const*>> const&, JSONRPCRequest const&, UniValue&) src/rpc/server.cpp:472:13 (bitcoind+0x4fc028)
        [#32](/bitcoin-bitcoin/32/) CRPCTable::execute(JSONRPCRequest const&) const src/rpc/server.cpp:492:13 (bitcoind+0x4fbbd6) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#33](/bitcoin-bitcoin/33/) HTTPReq_JSONRPC(std::any const&, HTTPRequest*) src/httprpc.cpp:202:40 (bitcoind+0x665e05) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#34](/bitcoin-bitcoin/34/) StartHTTPRPC(std::any const&)::$_0::operator()(HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) const src/httprpc.cpp:301:80 (bitcoind+0x665e05)
        [#35](/bitcoin-bitcoin/35/) bool std::__invoke_impl<bool, StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>(std::__invoke_other, StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x665e05)
        [#36](/bitcoin-bitcoin/36/) std::enable_if<is_invocable_r_v<bool, StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>, bool>::type std::__invoke_r<bool, StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>(StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x665e05)
        [#37](/bitcoin-bitcoin/37/) std::_Function_handler<bool (HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&), StartHTTPRPC(std::any const&)::$_0>::_M_invoke(std::_Any_data const&, HTTPRequest*&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x665e05)
        [#38](/bitcoin-bitcoin/38/) std::function<bool (HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)>::operator()(HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0x67a84d) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#39](/bitcoin-bitcoin/39/) HTTPWorkItem::operator()() src/httpserver.cpp:60:9 (bitcoind+0x67a84d)
        [#40](/bitcoin-bitcoin/40/) WorkQueue<HTTPClosure>::Run() src/httpserver.cpp:115:13 (bitcoind+0x67b9f2) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#41](/bitcoin-bitcoin/41/) HTTPWorkQueueRun(WorkQueue<HTTPClosure>*, int) src/httpserver.cpp:358:12 (bitcoind+0x672c07) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#42](/bitcoin-bitcoin/42/) void std::__invoke_impl<void, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(std::__invoke_other, void (*&&)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*&&, int&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x67c6c7) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#43](/bitcoin-bitcoin/43/) std::__invoke_result<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>::type std::__invoke<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(void (*&&)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*&&, int&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:96:14 (bitcoind+0x67c6c7)
        [#44](/bitcoin-bitcoin/44/) void std::thread::_Invoker<std::tuple<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>::_M_invoke<0ul, 1ul, 2ul>(std::_Index_tuple<0ul, 1ul, 2ul>) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_thread.h:292:13 (bitcoind+0x67c6c7)
        [#45](/bitcoin-bitcoin/45/) std::thread::_Invoker<std::tuple<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>::operator()() /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_thread.h:299:11 (bitcoind+0x67c6c7)
        [#46](/bitcoin-bitcoin/46/) std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>>::_M_run() /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_thread.h:244:13 (bitcoind+0x67c6c7)
        [#47](/bitcoin-bitcoin/47/) <null> <null> (libstdc++.so.6+0xe89b2) (BuildId: 35053d77606acdc55c2e290e966db2e83980b43c)
    
      Mutex M1 previously acquired by the same thread here:
        [#0](/bitcoin-bitcoin/0/) pthread_rwlock_wrlock /home/abuild/rpmbuild/BUILD/llvm-16.0.3.src/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:1532:3 (bitcoind+0xc17fb) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#1](/bitcoin-bitcoin/1/) __db_pthread_mutex_lock <null> (libdb_cxx-4.8.so+0x424aa) (BuildId: 78015441865958bf80e112ff259ff60c0eae5adf)
        [#2](/bitcoin-bitcoin/2/) wallet::BerkeleyBatch::BerkeleyBatch(wallet::BerkeleyDatabase&, bool, bool) src/wallet/bdb.cpp:325:14 (bitcoind+0x838dcf) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#3](/bitcoin-bitcoin/3/) std::__detail::_MakeUniq<wallet::BerkeleyBatch>::__single_object std::make_unique<wallet::BerkeleyBatch, wallet::BerkeleyDatabase&, bool, bool&>(wallet::BerkeleyDatabase&, bool&&, bool&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/unique_ptr.h:1070:34 (bitcoind+0x8419f7) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#4](/bitcoin-bitcoin/4/) wallet::BerkeleyDatabase::MakeBatch(bool) src/wallet/bdb.cpp:863:12 (bitcoind+0x8419f7)
        [#5](/bitcoin-bitcoin/5/) wallet::WalletBatch::WalletBatch(wallet::WalletDatabase&, bool) src/./wallet/walletdb.h:220:26 (bitcoind+0x7b559c) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#6](/bitcoin-bitcoin/6/) wallet::CWallet::LoadWallet() src/wallet/wallet.cpp:2321:31 (bitcoind+0x7b559c)
        [#7](/bitcoin-bitcoin/7/) wallet::CWallet::Create(wallet::WalletContext&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::unique_ptr<wallet::WalletDatabase, std::default_delete<wallet::WalletDatabase>>, unsigned long, bilingual_str&, std::vector<bilingual_str, std::allocator<bilingual_str>>&) src/wallet/wallet.cpp:2885:47 (bitcoind+0x796cca) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#8](/bitcoin-bitcoin/8/) wallet::CreateWallet(wallet::WalletContext&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::optional<bool>, wallet::DatabaseOptions&, wallet::DatabaseStatus&, bilingual_str&, std::vector<bilingual_str, std::allocator<bilingual_str>>&) src/wallet/wallet.cpp:380:39 (bitcoind+0x7938ca) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#9](/bitcoin-bitcoin/9/) wallet::createwallet()::$_0::operator()(RPCHelpMan const&, JSONRPCRequest const&) const src/wallet/rpc/wallet.cpp:423:45 (bitcoind+0x712da1) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#10](/bitcoin-bitcoin/10/) UniValue std::__invoke_impl<UniValue, wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&>(std::__invoke_other, wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x712da1)
        [#11](/bitcoin-bitcoin/11/) std::enable_if<is_invocable_r_v<UniValue, wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&>, UniValue>::type std::__invoke_r<UniValue, wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&>(wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x712da1)
        [#12](/bitcoin-bitcoin/12/) std::_Function_handler<UniValue (RPCHelpMan const&, JSONRPCRequest const&), wallet::createwallet()::$_0>::_M_invoke(std::_Any_data const&, RPCHelpMan const&, JSONRPCRequest const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x712da1)
        [#13](/bitcoin-bitcoin/13/) std::function<UniValue (RPCHelpMan const&, JSONRPCRequest const&)>::operator()(RPCHelpMan const&, JSONRPCRequest const&) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0xa7f205) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#14](/bitcoin-bitcoin/14/) RPCHelpMan::HandleRequest(JSONRPCRequest const&) const src/rpc/util.cpp:570:20 (bitcoind+0xa7f205)
        [#15](/bitcoin-bitcoin/15/) CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)::operator()(JSONRPCRequest const&, UniValue&, bool) const src/./rpc/server.h:109:91 (bitcoind+0x3ab4b7) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#16](/bitcoin-bitcoin/16/) bool std::__invoke_impl<bool, CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(std::__invoke_other, CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x3ab377) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#17](/bitcoin-bitcoin/17/) std::enable_if<is_invocable_r_v<bool, CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>, bool>::type std::__invoke_r<bool, CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x3ab377)
        [#18](/bitcoin-bitcoin/18/) std::_Function_handler<bool (JSONRPCRequest const&, UniValue&, bool), CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)>::_M_invoke(std::_Any_data const&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x3ab377)
        [#19](/bitcoin-bitcoin/19/) std::function<bool (JSONRPCRequest const&, UniValue&, bool)>::operator()(JSONRPCRequest const&, UniValue&, bool) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0x6cd7fb) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#20](/bitcoin-bitcoin/20/) wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)::operator()(JSONRPCRequest const&, UniValue&, bool) const src/wallet/interfaces.cpp:580:24 (bitcoind+0x6cd7fb)
        [#21](/bitcoin-bitcoin/21/) bool std::__invoke_impl<bool, wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(std::__invoke_other, wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x6cd7fb)
        [#22](/bitcoin-bitcoin/22/) std::enable_if<is_invocable_r_v<bool, wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>, bool>::type std::__invoke_r<bool, wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x6cd7fb)
        [#23](/bitcoin-bitcoin/23/) std::_Function_handler<bool (JSONRPCRequest const&, UniValue&, bool), wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)>::_M_invoke(std::_Any_data const&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x6cd7fb)
        [#24](/bitcoin-bitcoin/24/) std::function<bool (JSONRPCRequest const&, UniValue&, bool)>::operator()(JSONRPCRequest const&, UniValue&, bool) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0x2ee80a) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#25](/bitcoin-bitcoin/25/) node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)::operator()(JSONRPCRequest const&, UniValue&, bool) const src/node/interfaces.cpp:473:24 (bitcoind+0x2ee80a)
        [#26](/bitcoin-bitcoin/26/) bool std::__invoke_impl<bool, node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(std::__invoke_other, node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x2ee80a)
        [#27](/bitcoin-bitcoin/27/) std::enable_if<is_invocable_r_v<bool, node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>, bool>::type std::__invoke_r<bool, node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x2ee80a)
        [#28](/bitcoin-bitcoin/28/) std::_Function_handler<bool (JSONRPCRequest const&, UniValue&, bool), node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)>::_M_invoke(std::_Any_data const&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x2ee80a)
        [#29](/bitcoin-bitcoin/29/) std::function<bool (JSONRPCRequest const&, UniValue&, bool)>::operator()(JSONRPCRequest const&, UniValue&, bool) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0x4fc028) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#30](/bitcoin-bitcoin/30/) ExecuteCommand(CRPCCommand const&, JSONRPCRequest const&, UniValue&, bool) src/rpc/server.cpp:507:20 (bitcoind+0x4fc028)
        [#31](/bitcoin-bitcoin/31/) ExecuteCommands(std::vector<CRPCCommand const*, std::allocator<CRPCCommand const*>> const&, JSONRPCRequest const&, UniValue&) src/rpc/server.cpp:472:13 (bitcoind+0x4fc028)
        [#32](/bitcoin-bitcoin/32/) CRPCTable::execute(JSONRPCRequest const&) const src/rpc/server.cpp:492:13 (bitcoind+0x4fbbd6) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#33](/bitcoin-bitcoin/33/) HTTPReq_JSONRPC(std::any const&, HTTPRequest*) src/httprpc.cpp:202:40 (bitcoind+0x665e05) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#34](/bitcoin-bitcoin/34/) StartHTTPRPC(std::any const&)::$_0::operator()(HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) const src/httprpc.cpp:301:80 (bitcoind+0x665e05)
        [#35](/bitcoin-bitcoin/35/) bool std::__invoke_impl<bool, StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>(std::__invoke_other, StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x665e05)
        [#36](/bitcoin-bitcoin/36/) std::enable_if<is_invocable_r_v<bool, StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>, bool>::type std::__invoke_r<bool, StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>(StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x665e05)
        [#37](/bitcoin-bitcoin/37/) std::_Function_handler<bool (HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&), StartHTTPRPC(std::any const&)::$_0>::_M_invoke(std::_Any_data const&, HTTPRequest*&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x665e05)
        [#38](/bitcoin-bitcoin/38/) std::function<bool (HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)>::operator()(HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0x67a84d) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#39](/bitcoin-bitcoin/39/) HTTPWorkItem::operator()() src/httpserver.cpp:60:9 (bitcoind+0x67a84d)
        [#40](/bitcoin-bitcoin/40/) WorkQueue<HTTPClosure>::Run() src/httpserver.cpp:115:13 (bitcoind+0x67b9f2) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#41](/bitcoin-bitcoin/41/) HTTPWorkQueueRun(WorkQueue<HTTPClosure>*, int) src/httpserver.cpp:358:12 (bitcoind+0x672c07) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#42](/bitcoin-bitcoin/42/) void std::__invoke_impl<void, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(std::__invoke_other, void (*&&)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*&&, int&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x67c6c7) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#43](/bitcoin-bitcoin/43/) std::__invoke_result<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>::type std::__invoke<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(void (*&&)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*&&, int&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:96:14 (bitcoind+0x67c6c7)
        [#44](/bitcoin-bitcoin/44/) void std::thread::_Invoker<std::tuple<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>::_M_invoke<0ul, 1ul, 2ul>(std::_Index_tuple<0ul, 1ul, 2ul>) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_thread.h:292:13 (bitcoind+0x67c6c7)
        [#45](/bitcoin-bitcoin/45/) std::thread::_Invoker<std::tuple<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>::operator()() /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_thread.h:299:11 (bitcoind+0x67c6c7)
        [#46](/bitcoin-bitcoin/46/) std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>>::_M_run() /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_thread.h:244:13 (bitcoind+0x67c6c7)
        [#47](/bitcoin-bitcoin/47/) <null> <null> (libstdc++.so.6+0xe89b2) (BuildId: 35053d77606acdc55c2e290e966db2e83980b43c)
    
      Mutex M0 acquired here while holding mutex M2 in thread T12:
        [#0](/bitcoin-bitcoin/0/) pthread_rwlock_rdlock /home/abuild/rpmbuild/BUILD/llvm-16.0.3.src/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:1502:3 (bitcoind+0xc135b) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#1](/bitcoin-bitcoin/1/) __db_pthread_mutex_readlock <null> (libdb_cxx-4.8.so+0x423ba) (BuildId: 78015441865958bf80e112ff259ff60c0eae5adf)
        [#2](/bitcoin-bitcoin/2/) wallet::BerkeleyBatch::BerkeleyBatch(wallet::BerkeleyDatabase&, bool, bool) src/wallet/bdb.cpp:325:14 (bitcoind+0x838dcf) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#3](/bitcoin-bitcoin/3/) std::__detail::_MakeUniq<wallet::BerkeleyBatch>::__single_object std::make_unique<wallet::BerkeleyBatch, wallet::BerkeleyDatabase&, bool, bool&>(wallet::BerkeleyDatabase&, bool&&, bool&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/unique_ptr.h:1070:34 (bitcoind+0x8419f7) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#4](/bitcoin-bitcoin/4/) wallet::BerkeleyDatabase::MakeBatch(bool) src/wallet/bdb.cpp:863:12 (bitcoind+0x8419f7)
        [#5](/bitcoin-bitcoin/5/) wallet::WalletBatch::WalletBatch(wallet::WalletDatabase&, bool) src/./wallet/walletdb.h:220:26 (bitcoind+0x7b559c) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#6](/bitcoin-bitcoin/6/) wallet::CWallet::LoadWallet() src/wallet/wallet.cpp:2321:31 (bitcoind+0x7b559c)
        [#7](/bitcoin-bitcoin/7/) wallet::CWallet::Create(wallet::WalletContext&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::unique_ptr<wallet::WalletDatabase, std::default_delete<wallet::WalletDatabase>>, unsigned long, bilingual_str&, std::vector<bilingual_str, std::allocator<bilingual_str>>&) src/wallet/wallet.cpp:2885:47 (bitcoind+0x796cca) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#8](/bitcoin-bitcoin/8/) wallet::CreateWallet(wallet::WalletContext&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::optional<bool>, wallet::DatabaseOptions&, wallet::DatabaseStatus&, bilingual_str&, std::vector<bilingual_str, std::allocator<bilingual_str>>&) src/wallet/wallet.cpp:380:39 (bitcoind+0x7938ca) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#9](/bitcoin-bitcoin/9/) wallet::createwallet()::$_0::operator()(RPCHelpMan const&, JSONRPCRequest const&) const src/wallet/rpc/wallet.cpp:423:45 (bitcoind+0x712da1) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#10](/bitcoin-bitcoin/10/) UniValue std::__invoke_impl<UniValue, wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&>(std::__invoke_other, wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x712da1)
        [#11](/bitcoin-bitcoin/11/) std::enable_if<is_invocable_r_v<UniValue, wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&>, UniValue>::type std::__invoke_r<UniValue, wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&>(wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x712da1)
        [#12](/bitcoin-bitcoin/12/) std::_Function_handler<UniValue (RPCHelpMan const&, JSONRPCRequest const&), wallet::createwallet()::$_0>::_M_invoke(std::_Any_data const&, RPCHelpMan const&, JSONRPCRequest const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x712da1)
        [#13](/bitcoin-bitcoin/13/) std::function<UniValue (RPCHelpMan const&, JSONRPCRequest const&)>::operator()(RPCHelpMan const&, JSONRPCRequest const&) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0xa7f205) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#14](/bitcoin-bitcoin/14/) RPCHelpMan::HandleRequest(JSONRPCRequest const&) const src/rpc/util.cpp:570:20 (bitcoind+0xa7f205)
        [#15](/bitcoin-bitcoin/15/) CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)::operator()(JSONRPCRequest const&, UniValue&, bool) const src/./rpc/server.h:109:91 (bitcoind+0x3ab4b7) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#16](/bitcoin-bitcoin/16/) bool std::__invoke_impl<bool, CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(std::__invoke_other, CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x3ab377) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#17](/bitcoin-bitcoin/17/) std::enable_if<is_invocable_r_v<bool, CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>, bool>::type std::__invoke_r<bool, CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x3ab377)
        [#18](/bitcoin-bitcoin/18/) std::_Function_handler<bool (JSONRPCRequest const&, UniValue&, bool), CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)>::_M_invoke(std::_Any_data const&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x3ab377)
        [#19](/bitcoin-bitcoin/19/) std::function<bool (JSONRPCRequest const&, UniValue&, bool)>::operator()(JSONRPCRequest const&, UniValue&, bool) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0x6cd7fb) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#20](/bitcoin-bitcoin/20/) wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)::operator()(JSONRPCRequest const&, UniValue&, bool) const src/wallet/interfaces.cpp:580:24 (bitcoind+0x6cd7fb)
        [#21](/bitcoin-bitcoin/21/) bool std::__invoke_impl<bool, wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(std::__invoke_other, wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x6cd7fb)
        [#22](/bitcoin-bitcoin/22/) std::enable_if<is_invocable_r_v<bool, wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>, bool>::type std::__invoke_r<bool, wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x6cd7fb)
        [#23](/bitcoin-bitcoin/23/) std::_Function_handler<bool (JSONRPCRequest const&, UniValue&, bool), wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)>::_M_invoke(std::_Any_data const&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x6cd7fb)
        [#24](/bitcoin-bitcoin/24/) std::function<bool (JSONRPCRequest const&, UniValue&, bool)>::operator()(JSONRPCRequest const&, UniValue&, bool) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0x2ee80a) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#25](/bitcoin-bitcoin/25/) node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)::operator()(JSONRPCRequest const&, UniValue&, bool) const src/node/interfaces.cpp:473:24 (bitcoind+0x2ee80a)
        [#26](/bitcoin-bitcoin/26/) bool std::__invoke_impl<bool, node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(std::__invoke_other, node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x2ee80a)
        [#27](/bitcoin-bitcoin/27/) std::enable_if<is_invocable_r_v<bool, node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>, bool>::type std::__invoke_r<bool, node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x2ee80a)
        [#28](/bitcoin-bitcoin/28/) std::_Function_handler<bool (JSONRPCRequest const&, UniValue&, bool), node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)>::_M_invoke(std::_Any_data const&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x2ee80a)
        [#29](/bitcoin-bitcoin/29/) std::function<bool (JSONRPCRequest const&, UniValue&, bool)>::operator()(JSONRPCRequest const&, UniValue&, bool) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0x4fc028) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#30](/bitcoin-bitcoin/30/) ExecuteCommand(CRPCCommand const&, JSONRPCRequest const&, UniValue&, bool) src/rpc/server.cpp:507:20 (bitcoind+0x4fc028)
        [#31](/bitcoin-bitcoin/31/) ExecuteCommands(std::vector<CRPCCommand const*, std::allocator<CRPCCommand const*>> const&, JSONRPCRequest const&, UniValue&) src/rpc/server.cpp:472:13 (bitcoind+0x4fc028)
        [#32](/bitcoin-bitcoin/32/) CRPCTable::execute(JSONRPCRequest const&) const src/rpc/server.cpp:492:13 (bitcoind+0x4fbbd6) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#33](/bitcoin-bitcoin/33/) HTTPReq_JSONRPC(std::any const&, HTTPRequest*) src/httprpc.cpp:202:40 (bitcoind+0x665e05) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#34](/bitcoin-bitcoin/34/) StartHTTPRPC(std::any const&)::$_0::operator()(HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) const src/httprpc.cpp:301:80 (bitcoind+0x665e05)
        [#35](/bitcoin-bitcoin/35/) bool std::__invoke_impl<bool, StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>(std::__invoke_other, StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x665e05)
        [#36](/bitcoin-bitcoin/36/) std::enable_if<is_invocable_r_v<bool, StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>, bool>::type std::__invoke_r<bool, StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>(StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x665e05)
        [#37](/bitcoin-bitcoin/37/) std::_Function_handler<bool (HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&), StartHTTPRPC(std::any const&)::$_0>::_M_invoke(std::_Any_data const&, HTTPRequest*&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x665e05)
        [#38](/bitcoin-bitcoin/38/) std::function<bool (HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)>::operator()(HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0x67a84d) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#39](/bitcoin-bitcoin/39/) HTTPWorkItem::operator()() src/httpserver.cpp:60:9 (bitcoind+0x67a84d)
        [#40](/bitcoin-bitcoin/40/) WorkQueue<HTTPClosure>::Run() src/httpserver.cpp:115:13 (bitcoind+0x67b9f2) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#41](/bitcoin-bitcoin/41/) HTTPWorkQueueRun(WorkQueue<HTTPClosure>*, int) src/httpserver.cpp:358:12 (bitcoind+0x672c07) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#42](/bitcoin-bitcoin/42/) void std::__invoke_impl<void, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(std::__invoke_other, void (*&&)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*&&, int&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x67c6c7) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#43](/bitcoin-bitcoin/43/) std::__invoke_result<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>::type std::__invoke<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(void (*&&)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*&&, int&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:96:14 (bitcoind+0x67c6c7)
        [#44](/bitcoin-bitcoin/44/) void std::thread::_Invoker<std::tuple<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>::_M_invoke<0ul, 1ul, 2ul>(std::_Index_tuple<0ul, 1ul, 2ul>) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_thread.h:292:13 (bitcoind+0x67c6c7)
        [#45](/bitcoin-bitcoin/45/) std::thread::_Invoker<std::tuple<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>::operator()() /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_thread.h:299:11 (bitcoind+0x67c6c7)
        [#46](/bitcoin-bitcoin/46/) std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>>::_M_run() /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_thread.h:244:13 (bitcoind+0x67c6c7)
        [#47](/bitcoin-bitcoin/47/) <null> <null> (libstdc++.so.6+0xe89b2) (BuildId: 35053d77606acdc55c2e290e966db2e83980b43c)
    
      Mutex M2 previously acquired by the same thread here:
        [#0](/bitcoin-bitcoin/0/) pthread_rwlock_rdlock /home/abuild/rpmbuild/BUILD/llvm-16.0.3.src/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:1502:3 (bitcoind+0xc135b) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#1](/bitcoin-bitcoin/1/) __db_pthread_mutex_readlock <null> (libdb_cxx-4.8.so+0x423ba) (BuildId: 78015441865958bf80e112ff259ff60c0eae5adf)
        [#2](/bitcoin-bitcoin/2/) wallet::BerkeleyBatch::BerkeleyBatch(wallet::BerkeleyDatabase&, bool, bool) src/wallet/bdb.cpp:325:14 (bitcoind+0x838dcf) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#3](/bitcoin-bitcoin/3/) std::__detail::_MakeUniq<wallet::BerkeleyBatch>::__single_object std::make_unique<wallet::BerkeleyBatch, wallet::BerkeleyDatabase&, bool, bool&>(wallet::BerkeleyDatabase&, bool&&, bool&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/unique_ptr.h:1070:34 (bitcoind+0x8419f7) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#4](/bitcoin-bitcoin/4/) wallet::BerkeleyDatabase::MakeBatch(bool) src/wallet/bdb.cpp:863:12 (bitcoind+0x8419f7)
        [#5](/bitcoin-bitcoin/5/) wallet::WalletBatch::WalletBatch(wallet::WalletDatabase&, bool) src/./wallet/walletdb.h:220:26 (bitcoind+0x7b559c) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#6](/bitcoin-bitcoin/6/) wallet::CWallet::LoadWallet() src/wallet/wallet.cpp:2321:31 (bitcoind+0x7b559c)
        [#7](/bitcoin-bitcoin/7/) wallet::CWallet::Create(wallet::WalletContext&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::unique_ptr<wallet::WalletDatabase, std::default_delete<wallet::WalletDatabase>>, unsigned long, bilingual_str&, std::vector<bilingual_str, std::allocator<bilingual_str>>&) src/wallet/wallet.cpp:2885:47 (bitcoind+0x796cca) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#8](/bitcoin-bitcoin/8/) wallet::CreateWallet(wallet::WalletContext&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::optional<bool>, wallet::DatabaseOptions&, wallet::DatabaseStatus&, bilingual_str&, std::vector<bilingual_str, std::allocator<bilingual_str>>&) src/wallet/wallet.cpp:380:39 (bitcoind+0x7938ca) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#9](/bitcoin-bitcoin/9/) wallet::createwallet()::$_0::operator()(RPCHelpMan const&, JSONRPCRequest const&) const src/wallet/rpc/wallet.cpp:423:45 (bitcoind+0x712da1) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#10](/bitcoin-bitcoin/10/) UniValue std::__invoke_impl<UniValue, wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&>(std::__invoke_other, wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x712da1)
        [#11](/bitcoin-bitcoin/11/) std::enable_if<is_invocable_r_v<UniValue, wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&>, UniValue>::type std::__invoke_r<UniValue, wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&>(wallet::createwallet()::$_0&, RPCHelpMan const&, JSONRPCRequest const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x712da1)
        [#12](/bitcoin-bitcoin/12/) std::_Function_handler<UniValue (RPCHelpMan const&, JSONRPCRequest const&), wallet::createwallet()::$_0>::_M_invoke(std::_Any_data const&, RPCHelpMan const&, JSONRPCRequest const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x712da1)
        [#13](/bitcoin-bitcoin/13/) std::function<UniValue (RPCHelpMan const&, JSONRPCRequest const&)>::operator()(RPCHelpMan const&, JSONRPCRequest const&) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0xa7f205) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#14](/bitcoin-bitcoin/14/) RPCHelpMan::HandleRequest(JSONRPCRequest const&) const src/rpc/util.cpp:570:20 (bitcoind+0xa7f205)
        [#15](/bitcoin-bitcoin/15/) CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)::operator()(JSONRPCRequest const&, UniValue&, bool) const src/./rpc/server.h:109:91 (bitcoind+0x3ab4b7) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#16](/bitcoin-bitcoin/16/) bool std::__invoke_impl<bool, CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(std::__invoke_other, CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x3ab377) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#17](/bitcoin-bitcoin/17/) std::enable_if<is_invocable_r_v<bool, CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>, bool>::type std::__invoke_r<bool, CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x3ab377)
        [#18](/bitcoin-bitcoin/18/) std::_Function_handler<bool (JSONRPCRequest const&, UniValue&, bool), CRPCCommand::CRPCCommand(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)>::_M_invoke(std::_Any_data const&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x3ab377)
        [#19](/bitcoin-bitcoin/19/) std::function<bool (JSONRPCRequest const&, UniValue&, bool)>::operator()(JSONRPCRequest const&, UniValue&, bool) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0x6cd7fb) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#20](/bitcoin-bitcoin/20/) wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)::operator()(JSONRPCRequest const&, UniValue&, bool) const src/wallet/interfaces.cpp:580:24 (bitcoind+0x6cd7fb)
        [#21](/bitcoin-bitcoin/21/) bool std::__invoke_impl<bool, wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(std::__invoke_other, wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x6cd7fb)
        [#22](/bitcoin-bitcoin/22/) std::enable_if<is_invocable_r_v<bool, wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>, bool>::type std::__invoke_r<bool, wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x6cd7fb)
        [#23](/bitcoin-bitcoin/23/) std::_Function_handler<bool (JSONRPCRequest const&, UniValue&, bool), wallet::(anonymous namespace)::WalletLoaderImpl::registerRpcs()::'lambda'(JSONRPCRequest const&, UniValue&, bool)>::_M_invoke(std::_Any_data const&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x6cd7fb)
        [#24](/bitcoin-bitcoin/24/) std::function<bool (JSONRPCRequest const&, UniValue&, bool)>::operator()(JSONRPCRequest const&, UniValue&, bool) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0x2ee80a) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#25](/bitcoin-bitcoin/25/) node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)::operator()(JSONRPCRequest const&, UniValue&, bool) const src/node/interfaces.cpp:473:24 (bitcoind+0x2ee80a)
        [#26](/bitcoin-bitcoin/26/) bool std::__invoke_impl<bool, node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(std::__invoke_other, node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x2ee80a)
        [#27](/bitcoin-bitcoin/27/) std::enable_if<is_invocable_r_v<bool, node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>, bool>::type std::__invoke_r<bool, node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x2ee80a)
        [#28](/bitcoin-bitcoin/28/) std::_Function_handler<bool (JSONRPCRequest const&, UniValue&, bool), node::(anonymous namespace)::RpcHandlerImpl::RpcHandlerImpl(CRPCCommand const&)::'lambda'(JSONRPCRequest const&, UniValue&, bool)>::_M_invoke(std::_Any_data const&, JSONRPCRequest const&, UniValue&, bool&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x2ee80a)
        [#29](/bitcoin-bitcoin/29/) std::function<bool (JSONRPCRequest const&, UniValue&, bool)>::operator()(JSONRPCRequest const&, UniValue&, bool) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0x4fc028) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#30](/bitcoin-bitcoin/30/) ExecuteCommand(CRPCCommand const&, JSONRPCRequest const&, UniValue&, bool) src/rpc/server.cpp:507:20 (bitcoind+0x4fc028)
        [#31](/bitcoin-bitcoin/31/) ExecuteCommands(std::vector<CRPCCommand const*, std::allocator<CRPCCommand const*>> const&, JSONRPCRequest const&, UniValue&) src/rpc/server.cpp:472:13 (bitcoind+0x4fc028)
        [#32](/bitcoin-bitcoin/32/) CRPCTable::execute(JSONRPCRequest const&) const src/rpc/server.cpp:492:13 (bitcoind+0x4fbbd6) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#33](/bitcoin-bitcoin/33/) HTTPReq_JSONRPC(std::any const&, HTTPRequest*) src/httprpc.cpp:202:40 (bitcoind+0x665e05) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#34](/bitcoin-bitcoin/34/) StartHTTPRPC(std::any const&)::$_0::operator()(HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) const src/httprpc.cpp:301:80 (bitcoind+0x665e05)
        [#35](/bitcoin-bitcoin/35/) bool std::__invoke_impl<bool, StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>(std::__invoke_other, StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x665e05)
        [#36](/bitcoin-bitcoin/36/) std::enable_if<is_invocable_r_v<bool, StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>, bool>::type std::__invoke_r<bool, StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&>(StartHTTPRPC(std::any const&)::$_0&, HTTPRequest*&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:114:9 (bitcoind+0x665e05)
        [#37](/bitcoin-bitcoin/37/) std::_Function_handler<bool (HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&), StartHTTPRPC(std::any const&)::$_0>::_M_invoke(std::_Any_data const&, HTTPRequest*&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:290:9 (bitcoind+0x665e05)
        [#38](/bitcoin-bitcoin/38/) std::function<bool (HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)>::operator()(HTTPRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) const /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_function.h:591:9 (bitcoind+0x67a84d) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#39](/bitcoin-bitcoin/39/) HTTPWorkItem::operator()() src/httpserver.cpp:60:9 (bitcoind+0x67a84d)
        [#40](/bitcoin-bitcoin/40/) WorkQueue<HTTPClosure>::Run() src/httpserver.cpp:115:13 (bitcoind+0x67b9f2) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#41](/bitcoin-bitcoin/41/) HTTPWorkQueueRun(WorkQueue<HTTPClosure>*, int) src/httpserver.cpp:358:12 (bitcoind+0x672c07) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#42](/bitcoin-bitcoin/42/) void std::__invoke_impl<void, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(std::__invoke_other, void (*&&)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*&&, int&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:61:14 (bitcoind+0x67c6c7) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#43](/bitcoin-bitcoin/43/) std::__invoke_result<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>::type std::__invoke<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(void (*&&)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*&&, int&&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/invoke.h:96:14 (bitcoind+0x67c6c7)
        [#44](/bitcoin-bitcoin/44/) void std::thread::_Invoker<std::tuple<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>::_M_invoke<0ul, 1ul, 2ul>(std::_Index_tuple<0ul, 1ul, 2ul>) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_thread.h:292:13 (bitcoind+0x67c6c7)
        [#45](/bitcoin-bitcoin/45/) std::thread::_Invoker<std::tuple<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>::operator()() /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_thread.h:299:11 (bitcoind+0x67c6c7)
        [#46](/bitcoin-bitcoin/46/) std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>>::_M_run() /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/std_thread.h:244:13 (bitcoind+0x67c6c7)
        [#47](/bitcoin-bitcoin/47/) <null> <null> (libstdc++.so.6+0xe89b2) (BuildId: 35053d77606acdc55c2e290e966db2e83980b43c)
    
      Thread T12 'b-httpworker.2' (tid=25877, running) created by main thread at:
        [#0](/bitcoin-bitcoin/0/) pthread_create /home/abuild/rpmbuild/BUILD/llvm-16.0.3.src/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:1048:3 (bitcoind+0xbe53b) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#1](/bitcoin-bitcoin/1/) std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State>>, void (*)()) <null> (libstdc++.so.6+0xe8a88) (BuildId: 35053d77606acdc55c2e290e966db2e83980b43c)
        [#2](/bitcoin-bitcoin/2/) std::thread& std::vector<std::thread, std::allocator<std::thread>>::emplace_back<void (&)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int&>(void (&)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*&&, int&) /usr/bin/../lib64/gcc/x86_64-suse-linux/13/../../../../include/c++/13/bits/vector.tcc:123:4 (bitcoind+0x67823b) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#3](/bitcoin-bitcoin/3/) StartHTTPServer() src/httpserver.cpp:448:31 (bitcoind+0x6727a0) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#4](/bitcoin-bitcoin/4/) AppInitServers(node::NodeContext&) src/init.cpp:672:5 (bitcoind+0x173ada) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#5](/bitcoin-bitcoin/5/) AppInitMain(node::NodeContext&, interfaces::BlockAndHeaderTipInfo*) src/init.cpp:1193:14 (bitcoind+0x169432) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#6](/bitcoin-bitcoin/6/) AppInit(node::NodeContext&, int, char**) src/bitcoind.cpp:223:43 (bitcoind+0x148db0) (BuildId: 7003c15a42808be3f6980232870eef80bf18ee0b)
        [#7](/bitcoin-bitcoin/7/) main src/bitcoind.cpp:267:13 (bitcoind+0x148db0)
    
    SUMMARY: ThreadSanitizer: lock-order-inversion (potential deadlock) (/lib64/libdb_cxx-4.8.so+0x424aa) (BuildId: 78015441865958bf80e112ff259ff60c0eae5adf) in __db_pthread_mutex_lock
    ================== 
    
  7. fanquake commented at 11:01 AM on May 15, 2023: member

    Concept NACK given the above.

  8. hebasto closed this on May 15, 2023

  9. maflcko commented at 12:24 PM on May 15, 2023: member

    Could add a link with steps to reproduce as doc?

  10. hebasto commented at 12:29 PM on May 15, 2023: member

    @MarcoFalke

    Could add a link with steps to reproduce as doc?

    https://github.com/bitcoin/bitcoin/pull/27661

  11. fanquake referenced this in commit d7700d3a26 on May 15, 2023
  12. sidhujag referenced this in commit c7e01d55ee on May 15, 2023
  13. bitcoin locked this on May 14, 2024

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-04-24 21:13 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me