Update libmultiprocess subtree to fix race conditions on disconnects #34804

pull ryanofsky wants to merge 2 commits into bitcoin:master from ryanofsky:pr/subtree-9 changing 18 files +292 −42
  1. ryanofsky commented at 2:47 pm on March 11, 2026: contributor

    This is a draft because it depends on https://github.com/bitcoin-core/libmultiprocess/pull/250

    Includes:

    The main change is https://github.com/bitcoin-core/libmultiprocess/pull/249 which fixes 3 intermittent race conditions detected in bitcoin core CI and antithesis: #34711/#34756, #34777, and #34782.

    The changes can be verified by running test/lint/git-subtree-check.sh src/ipc/libmultiprocess as described in developer notes and lint instructions

  2. Squashed 'src/ipc/libmultiprocess/' changes from 1868a84451f..2fb97e8cca9
    2fb97e8cca9 race fix: m_on_cancel called after request finishes
    846a43aafb4 test: m_on_cancel called after request finishes
    e69b6bf3f4e race fix: getParams() called after request cancel
    75c5425173f test: getParams() called after request cancel
    f09731e242f race fix: worker thread destroyed before it is initialized
    88cacd4239f test: worker thread destroyed before it is initialized
    22bec918c97 Merge bitcoin-core/libmultiprocess#247: type-map: Work around LLVM 22 "out of bounds index" error
    8a5e3ae6ed2 Merge bitcoin-core/libmultiprocess#242: proxy-types: add CustomHasField hook to map Cap'n Proto values to null C++ values
    e8d35246918 Merge bitcoin-core/libmultiprocess#246: doc: Bump version 8 > 9
    97d877053b6 proxy-types: add CustomHasField hook for nullable decode paths
    8c2f10252c9 refactor: add missing includes to mp/type-data.h
    b1638aceb40 doc: Bump version 8 > 9
    f61af487217 type-map: Work around LLVM 22 "out of bounds index" error
    
    git-subtree-dir: src/ipc/libmultiprocess
    git-subtree-split: 2fb97e8cca9feb1df70cf29b2a9895bea2c4c49c
    4522fc61cb
  3. Merge commit '4522fc61cbc78c9685c0b0eb37cc343db0c5af56' into pr/subtree-9 6350dc9208
  4. DrahtBot commented at 2:48 pm on March 11, 2026: contributor

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

    Reviews

    See the guideline for information on the review process. A summary of reviews will appear here.

    LLM Linter (✨ experimental)

    Possible typos and grammar issues:

    • neccessary -> necessary [spelling error in test comment: “Sleep is neccessary…” should be “necessary”.]
    • execute an async requests -> executes an async request [subject-verb agreement and number: “after it execute an async requests” should be “after it executes an async request”.]

    2026-03-12 18:09:44

  5. ryanofsky force-pushed on Mar 12, 2026
  6. ryanofsky commented at 11:47 am on March 12, 2026: contributor
    Rebased af35175f1ef5860761095e2d59a4a64406a1d4d3 -> 6fd7194d8167176d96858097236eb3f9658fd124 (pr/subtree-9.1 -> pr/subtree-9.2, compare) adding new test from updated https://github.com/bitcoin-core/libmultiprocess/pull/250
  7. dergoegge commented at 12:02 pm on March 12, 2026: member
    Tested this PR with Antithesis and the bugs it previously found seem to no longer reproduce.
  8. fanquake commented at 2:21 pm on March 12, 2026: member

    https://github.com/bitcoin/bitcoin/actions/runs/23000375935/job/66791524592?pr=34804#step:11:3292

      0WARNING: ThreadSanitizer: data race (pid=21189)
      1  Write of size 8 at 0x7208000030c8 by thread T2:
      2    [#0](/bitcoin-bitcoin/0/) operator delete(void*, unsigned long) <null> (bitcoin-node+0x1f093c) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
      3    [#1](/bitcoin-bitcoin/1/) kj::_::HeapDisposer<mp::ProxyServer<mp::ThreadMap>>::disposeImpl(void*) const /home/admin/actions-runner/_work/_temp/depends/x86_64-pc-linux-gnu/include/kj/memory.h:557:60 (bitcoin-node+0x8291a5) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
      4    [#2](/bitcoin-bitcoin/2/) kj::Disposer::Dispose_<capnp::Capability::Server, true>::dispose(capnp::Capability::Server*, kj::Disposer const&) <null> (bitcoin-node+0xe2dc91) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
      5    [#3](/bitcoin-bitcoin/3/) void kj::Disposer::dispose<capnp::Capability::Server>(capnp::Capability::Server*) const <null> (bitcoin-node+0xe2dbe5) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
      6    [#4](/bitcoin-bitcoin/4/) kj::Own<capnp::Capability::Server, std::nullptr_t>::dispose() <null> (bitcoin-node+0xe5ed6e) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
      7    [#5](/bitcoin-bitcoin/5/) kj::Own<capnp::Capability::Server, std::nullptr_t>::~Own() <null> (bitcoin-node+0xe2a695) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
      8    [#6](/bitcoin-bitcoin/6/) kj::Maybe<kj::Own<capnp::Capability::Server, std::nullptr_t>>::~Maybe() <null> (bitcoin-node+0xe2d395) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
      9    [#7](/bitcoin-bitcoin/7/) capnp::LocalClient::~LocalClient() <null> (bitcoin-node+0xe615f8) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     10    [#8](/bitcoin-bitcoin/8/) capnp::LocalClient::~LocalClient() <null> (bitcoin-node+0xe616f9) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     11    [#9](/bitcoin-bitcoin/9/) non-virtual thunk to capnp::LocalClient::~LocalClient() <null> (bitcoin-node+0xe617c9) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     12    [#10](/bitcoin-bitcoin/10/) kj::Refcounted::disposeImpl(void*) const <null> (bitcoin-node+0x122a954) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     13    [#11](/bitcoin-bitcoin/11/) kj::Disposer::Dispose_<capnp::ClientHook, true>::dispose(capnp::ClientHook*, kj::Disposer const&) <null> (bitcoin-node+0xe35971) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     14    [#12](/bitcoin-bitcoin/12/) void kj::Disposer::dispose<capnp::ClientHook>(capnp::ClientHook*) const <null> (bitcoin-node+0xe358c5) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     15    [#13](/bitcoin-bitcoin/13/) kj::Own<capnp::ClientHook, std::nullptr_t>::dispose() <null> (bitcoin-node+0xe3586e) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     16    [#14](/bitcoin-bitcoin/14/) kj::Own<capnp::ClientHook, std::nullptr_t>::~Own() <null> (bitcoin-node+0xe29585) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     17    [#15](/bitcoin-bitcoin/15/) capnp::_::(anonymous namespace)::RpcConnectionState::Export::~Export() rpc.c++ (bitcoin-node+0xe860dc) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     18    [#16](/bitcoin-bitcoin/16/) capnp::_::(anonymous namespace)::RpcConnectionState::releaseExport(unsigned int, unsigned int) rpc.c++ (bitcoin-node+0xe8e639) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     19    [#17](/bitcoin-bitcoin/17/) capnp::_::(anonymous namespace)::RpcConnectionState::releaseExports(kj::ArrayPtr<unsigned int>) rpc.c++ (bitcoin-node+0xe9bff5) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     20    [#18](/bitcoin-bitcoin/18/) capnp::_::(anonymous namespace)::RpcConnectionState::handleFinish(capnp::rpc::Finish::Reader const&)::'lambda'()::operator()() const rpc.c++ (bitcoin-node+0xee7e95) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     21    [#19](/bitcoin-bitcoin/19/) kj::_::Deferred<capnp::_::(anonymous namespace)::RpcConnectionState::handleFinish(capnp::rpc::Finish::Reader const&)::'lambda'()>::run() rpc.c++ (bitcoin-node+0xee7c9a) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     22    [#20](/bitcoin-bitcoin/20/) kj::_::Deferred<capnp::_::(anonymous namespace)::RpcConnectionState::handleFinish(capnp::rpc::Finish::Reader const&)::'lambda'()>::~Deferred() rpc.c++ (bitcoin-node+0xee6769) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     23    [#21](/bitcoin-bitcoin/21/) capnp::_::(anonymous namespace)::RpcConnectionState::handleFinish(capnp::rpc::Finish::Reader const&) rpc.c++ (bitcoin-node+0xe8d59d) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     24    [#22](/bitcoin-bitcoin/22/) capnp::_::(anonymous namespace)::RpcConnectionState::handleMessage(kj::Own<capnp::IncomingRpcMessage, std::nullptr_t>) rpc.c++ (bitcoin-node+0xe8a593) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     25    [#23](/bitcoin-bitcoin/23/) capnp::_::(anonymous namespace)::RpcConnectionState::messageLoop()::'lambda'(kj::Maybe<kj::Own<capnp::IncomingRpcMessage, std::nullptr_t>>&&)::operator()(kj::Maybe<kj::Own<capnp::IncomingRpcMessage, std::nullptr_t>>&&) const rpc.c++ (bitcoin-node+0xe8a1eb) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     26    [#24](/bitcoin-bitcoin/24/) bool kj::_::MaybeVoidCaller<kj::Maybe<kj::Own<capnp::IncomingRpcMessage, std::nullptr_t>>, bool>::apply<capnp::_::(anonymous namespace)::RpcConnectionState::messageLoop()::'lambda'(kj::Maybe<kj::Own<capnp::IncomingRpcMessage, std::nullptr_t>>&&)>(capnp::_::(anonymous namespace)::RpcConnectionState::messageLoop()::'lambda'(kj::Maybe<kj::Own<capnp::IncomingRpcMessage, std::nullptr_t>>&&)&, kj::Maybe<kj::Own<capnp::IncomingRpcMessage, std::nullptr_t>>&&) rpc.c++ (bitcoin-node+0xeefc35) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     27    [#25](/bitcoin-bitcoin/25/) kj::_::TransformPromiseNode<bool, kj::Maybe<kj::Own<capnp::IncomingRpcMessage, std::nullptr_t>>, capnp::_::(anonymous namespace)::RpcConnectionState::messageLoop()::'lambda'(kj::Maybe<kj::Own<capnp::IncomingRpcMessage, std::nullptr_t>>&&), capnp::_::(anonymous namespace)::RpcConnectionState::messageLoop()::'lambda'(kj::Exception&&)>::getImpl(kj::_::ExceptionOrValue&) rpc.c++ (bitcoin-node+0xeef841) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     28    [#26](/bitcoin-bitcoin/26/) kj::_::TransformPromiseNodeBase::get(kj::_::ExceptionOrValue&)::$_0::operator()() const async.c++ (bitcoin-node+0x10716f3) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     29    [#27](/bitcoin-bitcoin/27/) kj::Maybe<kj::Exception> kj::runCatchingExceptions<kj::_::TransformPromiseNodeBase::get(kj::_::ExceptionOrValue&)::$_0>(kj::_::TransformPromiseNodeBase::get(kj::_::ExceptionOrValue&)::$_0&&) async.c++ (bitcoin-node+0x1061bb7) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     30    [#28](/bitcoin-bitcoin/28/) kj::_::TransformPromiseNodeBase::get(kj::_::ExceptionOrValue&) <null> (bitcoin-node+0x1061aab) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     31    [#29](/bitcoin-bitcoin/29/) kj::_::TransformPromiseNodeBase::getDepResult(kj::_::ExceptionOrValue&) <null> (bitcoin-node+0x1061e62) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     32    [#30](/bitcoin-bitcoin/30/) kj::_::TransformPromiseNode<kj::_::Void, bool, capnp::_::(anonymous namespace)::RpcConnectionState::messageLoop()::'lambda'(bool), kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) rpc.c++ (bitcoin-node+0xef1bd3) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     33    [#31](/bitcoin-bitcoin/31/) kj::_::TransformPromiseNodeBase::get(kj::_::ExceptionOrValue&)::$_0::operator()() const async.c++ (bitcoin-node+0x10716f3) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     34    [#32](/bitcoin-bitcoin/32/) kj::Maybe<kj::Exception> kj::runCatchingExceptions<kj::_::TransformPromiseNodeBase::get(kj::_::ExceptionOrValue&)::$_0>(kj::_::TransformPromiseNodeBase::get(kj::_::ExceptionOrValue&)::$_0&&) async.c++ (bitcoin-node+0x1061bb7) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     35    [#33](/bitcoin-bitcoin/33/) kj::_::TransformPromiseNodeBase::get(kj::_::ExceptionOrValue&) <null> (bitcoin-node+0x1061aab) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     36    [#34](/bitcoin-bitcoin/34/) kj::TaskSet::Task::fire() <null> (bitcoin-node+0x108bf23) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     37    [#35](/bitcoin-bitcoin/35/) non-virtual thunk to kj::TaskSet::Task::fire() <null> (bitcoin-node+0x108c459) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     38    [#36](/bitcoin-bitcoin/36/) kj::EventLoop::turn() <null> (bitcoin-node+0x105c635) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     39    [#37](/bitcoin-bitcoin/37/) kj::_::waitImpl(kj::Own<kj::_::PromiseNode, kj::_::PromiseDisposer>&&, kj::_::ExceptionOrValue&, kj::WaitScope&, kj::SourceLocation)::$_2::operator()() const async.c++ (bitcoin-node+0x1070484) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     40    [#38](/bitcoin-bitcoin/38/) void kj::WaitScope::runOnStackPool<kj::_::waitImpl(kj::Own<kj::_::PromiseNode, kj::_::PromiseDisposer>&&, kj::_::ExceptionOrValue&, kj::WaitScope&, kj::SourceLocation)::$_2>(kj::_::waitImpl(kj::Own<kj::_::PromiseNode, kj::_::PromiseDisposer>&&, kj::_::ExceptionOrValue&, kj::WaitScope&, kj::SourceLocation)::$_2&&) async.c++ (bitcoin-node+0x105e5a7) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     41    [#39](/bitcoin-bitcoin/39/) kj::_::waitImpl(kj::Own<kj::_::PromiseNode, kj::_::PromiseDisposer>&&, kj::_::ExceptionOrValue&, kj::WaitScope&, kj::SourceLocation) <null> (bitcoin-node+0x105e121) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     42    [#40](/bitcoin-bitcoin/40/) kj::Promise<unsigned long>::wait(kj::WaitScope&, kj::SourceLocation) /home/admin/actions-runner/_work/_temp/depends/x86_64-pc-linux-gnu/include/kj/async-inl.h:1359:3 (bitcoin-node+0xe17187) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     43    [#41](/bitcoin-bitcoin/41/) mp::EventLoop::loop() /home/admin/actions-runner/_work/_temp/src/ipc/libmultiprocess/src/mp/proxy.cpp:244:68 (bitcoin-node+0xe11d71) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     44    [#42](/bitcoin-bitcoin/42/) ipc::capnp::(anonymous namespace)::CapnpProtocol::startLoop(char const*)::'lambda'()::operator()() const /home/admin/actions-runner/_work/_temp/src/ipc/capnp/protocol.cpp:136:21 (bitcoin-node+0x819606) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     45    [#43](/bitcoin-bitcoin/43/) std::__1::__invoke_result_impl<void, ipc::capnp::(anonymous namespace)::CapnpProtocol::startLoop(char const*)::'lambda'()>::type std::__1::__invoke[abi:dee220100]<ipc::capnp::(anonymous namespace)::CapnpProtocol::startLoop(char const*)::'lambda'()>(ipc::capnp::(anonymous namespace)::CapnpProtocol::startLoop(char const*)::'lambda'()&&) /cxx_build/include/c++/v1/__type_traits/invoke.h:90:27 (bitcoin-node+0x819606)
     46    [#44](/bitcoin-bitcoin/44/) void std::__1::__thread_execute[abi:dee220100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, ipc::capnp::(anonymous namespace)::CapnpProtocol::startLoop(char const*)::'lambda'(), 0ul>(std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, ipc::capnp::(anonymous namespace)::CapnpProtocol::startLoop(char const*)::'lambda'()>&, std::__1::__integer_sequence<unsigned long, 0ul>) /cxx_build/include/c++/v1/__thread/thread.h:161:3 (bitcoin-node+0x819606)
     47    [#45](/bitcoin-bitcoin/45/) void* std::__1::__thread_proxy[abi:dee220100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, ipc::capnp::(anonymous namespace)::CapnpProtocol::startLoop(char const*)::'lambda'()>>(void*) /cxx_build/include/c++/v1/__thread/thread.h:169:3 (bitcoin-node+0x819606)
     48
     49  Previous read of size 8 at 0x7208000030c8 by thread T11 (mutexes: write M0):
     50    [#0](/bitcoin-bitcoin/0/) mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0::operator()() const /home/admin/actions-runner/_work/_temp/src/ipc/libmultiprocess/src/mp/proxy.cpp:421:19 (bitcoin-node+0xe15c65) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     51    [#1](/bitcoin-bitcoin/1/) std::__1::__invoke_result_impl<void, mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0>::type std::__1::__invoke[abi:dee220100]<mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0>(mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0&&) /cxx_build/include/c++/v1/__type_traits/invoke.h:90:27 (bitcoin-node+0xe15c65)
     52    [#2](/bitcoin-bitcoin/2/) void std::__1::__thread_execute[abi:dee220100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0, 0ul>(std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0>&, std::__1::__integer_sequence<unsigned long, 0ul>) /cxx_build/include/c++/v1/__thread/thread.h:161:3 (bitcoin-node+0xe15c65)
     53    [#3](/bitcoin-bitcoin/3/) void* std::__1::__thread_proxy[abi:dee220100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0>>(void*) /cxx_build/include/c++/v1/__thread/thread.h:169:3 (bitcoin-node+0xe15c65)
     54
     55  Mutex M0 (0x721c00023000) created at:
     56    [#0](/bitcoin-bitcoin/0/) pthread_mutex_lock <null> (bitcoin-node+0x16c03b) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     57    [#1](/bitcoin-bitcoin/1/) __libcpp_mutex_lock /llvm-project/libcxx/include/__thread/support/pthread.h:95:10 (libc++.so.1+0x8e019) (BuildId: 73e2cbaab3a26ac81ab0ad8de91c2952a3321d81)
     58    [#2](/bitcoin-bitcoin/2/) std::__1::mutex::lock() /llvm-project/libcxx/src/mutex.cpp:30:12 (libc++.so.1+0x8e019)
     59    [#3](/bitcoin-bitcoin/3/) std::__1::unique_lock<std::__1::mutex>::unique_lock[abi:dee220100](std::__1::mutex&) /cxx_build/include/c++/v1/__mutex/unique_lock.h:44:11 (bitcoin-node+0xe15c19) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     60    [#4](/bitcoin-bitcoin/4/) mp::Lock::Lock(mp::Mutex&) /home/admin/actions-runner/_work/_temp/src/ipc/libmultiprocess/include/mp/util.h:173:45 (bitcoin-node+0xe15c19)
     61    [#5](/bitcoin-bitcoin/5/) mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0::operator()() const /home/admin/actions-runner/_work/_temp/src/ipc/libmultiprocess/src/mp/proxy.cpp:419:14 (bitcoin-node+0xe15c19)
     62    [#6](/bitcoin-bitcoin/6/) std::__1::__invoke_result_impl<void, mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0>::type std::__1::__invoke[abi:dee220100]<mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0>(mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0&&) /cxx_build/include/c++/v1/__type_traits/invoke.h:90:27 (bitcoin-node+0xe15c19)
     63    [#7](/bitcoin-bitcoin/7/) void std::__1::__thread_execute[abi:dee220100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0, 0ul>(std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0>&, std::__1::__integer_sequence<unsigned long, 0ul>) /cxx_build/include/c++/v1/__thread/thread.h:161:3 (bitcoin-node+0xe15c19)
     64    [#8](/bitcoin-bitcoin/8/) void* std::__1::__thread_proxy[abi:dee220100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0>>(void*) /cxx_build/include/c++/v1/__thread/thread.h:169:3 (bitcoin-node+0xe15c19)
     65
     66  Thread T2 'b-capnp-loop' (tid=21201, running) created by main thread at:
     67    [#0](/bitcoin-bitcoin/0/) pthread_create <null> (bitcoin-node+0x16a32e) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     68    [#1](/bitcoin-bitcoin/1/) std::__1::__libcpp_thread_create[abi:dee220100](unsigned long*, void* (*)(void*), void*) /cxx_build/include/c++/v1/__thread/support/pthread.h:182:10 (bitcoin-node+0x819145) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     69    [#2](/bitcoin-bitcoin/2/) std::__1::thread::thread[abi:dee220100]<ipc::capnp::(anonymous namespace)::CapnpProtocol::startLoop(char const*)::'lambda'(), 0>(ipc::capnp::(anonymous namespace)::CapnpProtocol::startLoop(char const*)::'lambda'()&&) /cxx_build/include/c++/v1/__thread/thread.h:218:16 (bitcoin-node+0x819145)
     70    [#3](/bitcoin-bitcoin/3/) ipc::capnp::(anonymous namespace)::CapnpProtocol::startLoop(char const*) /home/admin/actions-runner/_work/_temp/src/ipc/capnp/protocol.cpp:127:25 (bitcoin-node+0x819145)
     71    [#4](/bitcoin-bitcoin/4/) ipc::capnp::(anonymous namespace)::CapnpProtocol::listen(int, char const*, interfaces::Init&) /home/admin/actions-runner/_work/_temp/src/ipc/capnp/protocol.cpp:87:9 (bitcoin-node+0x8184dd) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     72    [#5](/bitcoin-bitcoin/5/) ipc::(anonymous namespace)::IpcImpl::listenAddress(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>&) /home/admin/actions-runner/_work/_temp/src/ipc/interfaces.cpp:111:21 (bitcoin-node+0x8148a0) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     73    [#6](/bitcoin-bitcoin/6/) AppInitMain(node::NodeContext&, interfaces::BlockAndHeaderTipInfo*) /home/admin/actions-runner/_work/_temp/src/init.cpp:1505:22 (bitcoin-node+0x2102a7) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     74    [#7](/bitcoin-bitcoin/7/) AppInit(node::NodeContext&) /home/admin/actions-runner/_work/_temp/src/bitcoind.cpp:242:43 (bitcoin-node+0x1f1e86) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     75    [#8](/bitcoin-bitcoin/8/) main /home/admin/actions-runner/_work/_temp/src/bitcoind.cpp:283:10 (bitcoin-node+0x1f1e86)
     76
     77  Thread T11 (tid=21259, running) created by thread T2 at:
     78    [#0](/bitcoin-bitcoin/0/) pthread_create <null> (bitcoin-node+0x16a32e) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     79    [#1](/bitcoin-bitcoin/1/) std::__1::__libcpp_thread_create[abi:dee220100](unsigned long*, void* (*)(void*), void*) /cxx_build/include/c++/v1/__thread/support/pthread.h:182:10 (bitcoin-node+0xe14411) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     80    [#2](/bitcoin-bitcoin/2/) std::__1::thread::thread[abi:dee220100]<mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0, 0>(mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0&&) /cxx_build/include/c++/v1/__thread/thread.h:218:16 (bitcoin-node+0xe14411)
     81    [#3](/bitcoin-bitcoin/3/) mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>) /home/admin/actions-runner/_work/_temp/src/ipc/libmultiprocess/src/mp/proxy.cpp:416:17 (bitcoin-node+0xe14411)
     82    [#4](/bitcoin-bitcoin/4/) mp::ThreadMap::Server::dispatchCallInternal(unsigned short, capnp::CallContext<capnp::AnyPointer, capnp::AnyPointer>) /home/admin/actions-runner/_work/_temp/build/src/ipc/libmultiprocess/include/mp/proxy.capnp.c++:602:9 (bitcoin-node+0xe0ea48) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     83    [#5](/bitcoin-bitcoin/5/) mp::ThreadMap::Server::dispatchCall(unsigned long, unsigned short, capnp::CallContext<capnp::AnyPointer, capnp::AnyPointer>) /home/admin/actions-runner/_work/_temp/build/src/ipc/libmultiprocess/include/mp/proxy.capnp.c++:591:14 (bitcoin-node+0xe0ea48)
     84    [#6](/bitcoin-bitcoin/6/) virtual thunk to mp::ThreadMap::Server::dispatchCall(unsigned long, unsigned short, capnp::CallContext<capnp::AnyPointer, capnp::AnyPointer>) /home/admin/actions-runner/_work/_temp/build/src/ipc/libmultiprocess/include/mp/proxy.capnp.c++ (bitcoin-node+0xe0ea48)
     85    [#7](/bitcoin-bitcoin/7/) capnp::LocalClient::callInternal(unsigned long, unsigned short, capnp::CallContextHook&) <null> (bitcoin-node+0xe6abed) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     86    [#8](/bitcoin-bitcoin/8/) capnp::LocalClient::call(unsigned long, unsigned short, kj::Own<capnp::CallContextHook, std::nullptr_t>&&, capnp::Capability::Client::CallHints)::'lambda'()::operator()() const <null> (bitcoin-node+0xe6a63d) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     87    [#9](/bitcoin-bitcoin/9/) kj::Promise<void> kj::_::MaybeVoidCaller<kj::_::Void, kj::Promise<void>>::apply<capnp::LocalClient::call(unsigned long, unsigned short, kj::Own<capnp::CallContextHook, std::nullptr_t>&&, capnp::Capability::Client::CallHints)::'lambda'()>(capnp::LocalClient::call(unsigned long, unsigned short, kj::Own<capnp::CallContextHook, std::nullptr_t>&&, capnp::Capability::Client::CallHints)::'lambda'()&, kj::_::Void&&) <null> (bitcoin-node+0xe72851) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     88    [#10](/bitcoin-bitcoin/10/) kj::_::TransformPromiseNode<kj::Promise<void>, kj::_::Void, capnp::LocalClient::call(unsigned long, unsigned short, kj::Own<capnp::CallContextHook, std::nullptr_t>&&, capnp::Capability::Client::CallHints)::'lambda'(), kj::_::PropagateException>::getImpl(kj::_::ExceptionOrValue&) <null> (bitcoin-node+0xe72451) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     89    [#11](/bitcoin-bitcoin/11/) kj::_::TransformPromiseNodeBase::get(kj::_::ExceptionOrValue&)::$_0::operator()() const async.c++ (bitcoin-node+0x10716f3) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     90    [#12](/bitcoin-bitcoin/12/) kj::Maybe<kj::Exception> kj::runCatchingExceptions<kj::_::TransformPromiseNodeBase::get(kj::_::ExceptionOrValue&)::$_0>(kj::_::TransformPromiseNodeBase::get(kj::_::ExceptionOrValue&)::$_0&&) async.c++ (bitcoin-node+0x1061bb7) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     91    [#13](/bitcoin-bitcoin/13/) kj::_::TransformPromiseNodeBase::get(kj::_::ExceptionOrValue&) <null> (bitcoin-node+0x1061aab) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     92    [#14](/bitcoin-bitcoin/14/) kj::_::ChainPromiseNode::fire() <null> (bitcoin-node+0x1063ac4) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     93    [#15](/bitcoin-bitcoin/15/) non-virtual thunk to kj::_::ChainPromiseNode::fire() <null> (bitcoin-node+0x10644d9) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     94    [#16](/bitcoin-bitcoin/16/) kj::EventLoop::turn() <null> (bitcoin-node+0x105c635) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     95    [#17](/bitcoin-bitcoin/17/) kj::_::waitImpl(kj::Own<kj::_::PromiseNode, kj::_::PromiseDisposer>&&, kj::_::ExceptionOrValue&, kj::WaitScope&, kj::SourceLocation)::$_2::operator()() const async.c++ (bitcoin-node+0x1070484) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     96    [#18](/bitcoin-bitcoin/18/) void kj::WaitScope::runOnStackPool<kj::_::waitImpl(kj::Own<kj::_::PromiseNode, kj::_::PromiseDisposer>&&, kj::_::ExceptionOrValue&, kj::WaitScope&, kj::SourceLocation)::$_2>(kj::_::waitImpl(kj::Own<kj::_::PromiseNode, kj::_::PromiseDisposer>&&, kj::_::ExceptionOrValue&, kj::WaitScope&, kj::SourceLocation)::$_2&&) async.c++ (bitcoin-node+0x105e5a7) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     97    [#19](/bitcoin-bitcoin/19/) kj::_::waitImpl(kj::Own<kj::_::PromiseNode, kj::_::PromiseDisposer>&&, kj::_::ExceptionOrValue&, kj::WaitScope&, kj::SourceLocation) <null> (bitcoin-node+0x105e121) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     98    [#20](/bitcoin-bitcoin/20/) kj::Promise<unsigned long>::wait(kj::WaitScope&, kj::SourceLocation) /home/admin/actions-runner/_work/_temp/depends/x86_64-pc-linux-gnu/include/kj/async-inl.h:1359:3 (bitcoin-node+0xe17187) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
     99    [#21](/bitcoin-bitcoin/21/) mp::EventLoop::loop() /home/admin/actions-runner/_work/_temp/src/ipc/libmultiprocess/src/mp/proxy.cpp:244:68 (bitcoin-node+0xe11d71) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
    100    [#22](/bitcoin-bitcoin/22/) ipc::capnp::(anonymous namespace)::CapnpProtocol::startLoop(char const*)::'lambda'()::operator()() const /home/admin/actions-runner/_work/_temp/src/ipc/capnp/protocol.cpp:136:21 (bitcoin-node+0x819606) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604)
    101    [#23](/bitcoin-bitcoin/23/) std::__1::__invoke_result_impl<void, ipc::capnp::(anonymous namespace)::CapnpProtocol::startLoop(char const*)::'lambda'()>::type std::__1::__invoke[abi:dee220100]<ipc::capnp::(anonymous namespace)::CapnpProtocol::startLoop(char const*)::'lambda'()>(ipc::capnp::(anonymous namespace)::CapnpProtocol::startLoop(char const*)::'lambda'()&&) /cxx_build/include/c++/v1/__type_traits/invoke.h:90:27 (bitcoin-node+0x819606)
    102    [#24](/bitcoin-bitcoin/24/) void std::__1::__thread_execute[abi:dee220100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, ipc::capnp::(anonymous namespace)::CapnpProtocol::startLoop(char const*)::'lambda'(), 0ul>(std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, ipc::capnp::(anonymous namespace)::CapnpProtocol::startLoop(char const*)::'lambda'()>&, std::__1::__integer_sequence<unsigned long, 0ul>) /cxx_build/include/c++/v1/__thread/thread.h:161:3 (bitcoin-node+0x819606)
    103    [#25](/bitcoin-bitcoin/25/) void* std::__1::__thread_proxy[abi:dee220100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, ipc::capnp::(anonymous namespace)::CapnpProtocol::startLoop(char const*)::'lambda'()>>(void*) /cxx_build/include/c++/v1/__thread/thread.h:169:3 (bitcoin-node+0x819606)
    104
    105SUMMARY: ThreadSanitizer: data race (/home/admin/actions-runner/_work/_temp/build/bin/bitcoin-node+0x1f093c) (BuildId: 777a2f17a2bf7616985ece2bd101be9be19e9604) in operator delete(void*, unsigned long)
    

    https://github.com/bitcoin/bitcoin/actions/runs/23000375935/job/66791524507?pr=34804#step:11:3525

     0==27808==ERROR: AddressSanitizer: heap-use-after-free on address 0x760561bf2468 at pc 0x646e8a5014c9 bp 0x75d55a31c930 sp 0x75d55a31c928
     1READ of size 8 at 0x760561bf2468 thread T11
     2    [#0](/bitcoin-bitcoin/0/) 0x646e8a5014c8 in mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0::operator()() const /home/admin/actions-runner/_work/_temp/src/ipc/libmultiprocess/src/mp/proxy.cpp:421:19
     3    [#1](/bitcoin-bitcoin/1/) 0x646e8a5014c8 in void std::__invoke_impl<void, mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0>(std::__invoke_other, mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0&&) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/invoke.h:61:14
     4    [#2](/bitcoin-bitcoin/2/) 0x646e8a5014c8 in std::__invoke_result<mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0>::type std::__invoke<mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0>(mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0&&) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/invoke.h:96:14
     5    [#3](/bitcoin-bitcoin/3/) 0x646e8a5014c8 in void std::thread::_Invoker<std::tuple<mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0>>::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/std_thread.h:292:13
     6    [#4](/bitcoin-bitcoin/4/) 0x646e8a5014c8 in std::thread::_Invoker<std::tuple<mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0>>::operator()() /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/std_thread.h:299:11
     7    [#5](/bitcoin-bitcoin/5/) 0x646e8a5014c8 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0>>>::_M_run() /usr/lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/std_thread.h:244:13
     8    [#6](/bitcoin-bitcoin/6/) 0x79d563033db3  (/lib/x86_64-linux-gnu/libstdc++.so.6+0xecdb3) (BuildId: 753c6c8608b61d4e67be8f0c890e03e0aa046b8b)
     9    [#7](/bitcoin-bitcoin/7/) 0x646e8902e85a in asan_thread_start(void*) crtstuff.c
    10    [#8](/bitcoin-bitcoin/8/) 0x79d562ca5aa3  (/lib/x86_64-linux-gnu/libc.so.6+0x9caa3) (BuildId: 8e9fd827446c24067541ac5390e6f527fb5947bb)
    11    [#9](/bitcoin-bitcoin/9/) 0x79d562d32c6b  (/lib/x86_64-linux-gnu/libc.so.6+0x129c6b) (BuildId: 8e9fd827446c24067541ac5390e6f527fb5947bb)
    12
    130x760561bf2468 is located 8 bytes inside of 32-byte region [0x760561bf2460,0x760561bf2480)
    14freed by thread T2 (b-capnp-loop) here:
    15    [#0](/bitcoin-bitcoin/0/) 0x646e89075f66 in operator delete(void*, unsigned long) (/home/admin/actions-runner/_work/_temp/build/bin/bitcoin-node+0x1408f66) (BuildId: 89995cb68dd51cd207c97d4b8e372df7e8c677d2)
    16    [#1](/bitcoin-bitcoin/1/) 0x79d5635559d9  (/lib/x86_64-linux-gnu/libcapnp-rpc-1.0.1.so+0x489d9) (BuildId: 44717f0ad52d0e372420b8de2d7701bfba298f14)
    17    [#2](/bitcoin-bitcoin/2/) 0x79d563586a13  (/lib/x86_64-linux-gnu/libcapnp-rpc-1.0.1.so+0x79a13) (BuildId: 44717f0ad52d0e372420b8de2d7701bfba298f14)
    18    [#3](/bitcoin-bitcoin/3/) 0x79d5635872b6  (/lib/x86_64-linux-gnu/libcapnp-rpc-1.0.1.so+0x7a2b6) (BuildId: 44717f0ad52d0e372420b8de2d7701bfba298f14)
    19    [#4](/bitcoin-bitcoin/4/) 0x79d56358a505  (/lib/x86_64-linux-gnu/libcapnp-rpc-1.0.1.so+0x7d505) (BuildId: 44717f0ad52d0e372420b8de2d7701bfba298f14)
    20    [#5](/bitcoin-bitcoin/5/) 0x79d56359d42b  (/lib/x86_64-linux-gnu/libcapnp-rpc-1.0.1.so+0x9042b) (BuildId: 44717f0ad52d0e372420b8de2d7701bfba298f14)
    21    [#6](/bitcoin-bitcoin/6/) 0x79d5633e961c in kj::_::TransformPromiseNodeBase::get(kj::_::ExceptionOrValue&) (/lib/x86_64-linux-gnu/libkj-async-1.0.1.so+0x3e61c) (BuildId: 356b68ed6bfbcc99793859e96d335850186ca5da)
    22    [#7](/bitcoin-bitcoin/7/) 0x79d5633e9694 in kj::_::TransformPromiseNodeBase::getDepResult(kj::_::ExceptionOrValue&) (/lib/x86_64-linux-gnu/libkj-async-1.0.1.so+0x3e694) (BuildId: 356b68ed6bfbcc99793859e96d335850186ca5da)
    23    [#8](/bitcoin-bitcoin/8/) 0x79d56359ae20  (/lib/x86_64-linux-gnu/libcapnp-rpc-1.0.1.so+0x8de20) (BuildId: 44717f0ad52d0e372420b8de2d7701bfba298f14)
    24    [#9](/bitcoin-bitcoin/9/) 0x79d5633e961c in kj::_::TransformPromiseNodeBase::get(kj::_::ExceptionOrValue&) (/lib/x86_64-linux-gnu/libkj-async-1.0.1.so+0x3e61c) (BuildId: 356b68ed6bfbcc99793859e96d335850186ca5da)
    25    [#10](/bitcoin-bitcoin/10/) 0x79d5633e52e6  (/lib/x86_64-linux-gnu/libkj-async-1.0.1.so+0x3a2e6) (BuildId: 356b68ed6bfbcc99793859e96d335850186ca5da)
    26  Stack after return:      f5
    27  Stack use after scope:   f8
    28  Global redzone:          f9
    29  Global init order:       f6
    30  Poisoned by user:        f7
    31  Container overflow:      fc
    32  Array cookie:            ac
    33  Intra object redzone:    bb
    34  ASan internal:           fe
    35  Left alloca redzone:     ca
    36  Right alloca redzone:    cb
    37==27808==ABORTING 
    
  9. DrahtBot added the label CI failed on Mar 12, 2026
  10. ryanofsky commented at 4:40 pm on March 12, 2026: contributor
    Thanks fanquake looks like both of these errors are caused by the new hooks added for testng, so not very surprising. The tests were automatically generated and pretty close to being right but have a number of issues and I’m rewriting them.
  11. ryanofsky force-pushed on Mar 12, 2026
  12. ryanofsky commented at 6:11 pm on March 12, 2026: contributor
    Rebased 6fd7194d8167176d96858097236eb3f9658fd124 -> 6350dc920899d0b3b44022f4671e37c4f0386bfb (pr/subtree-9.2 -> pr/subtree-9.3, compare) based on https://github.com/bitcoin-core/libmultiprocess/pull/249 pr/disraces.3
  13. DrahtBot removed the label CI failed on Mar 12, 2026

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-03-13 12:13 UTC

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