[v30.0rc3]bitcoin-node aborts with mining IPC interface usage #33554

issue plebhash openend this issue on October 6, 2025
  1. plebhash commented at 10:20 pm on October 6, 2025: none

    this is similar to #33463 cc @ryanofsky

    however there’s no usage of waitTipChanged, only waitNext… and the proble is not that bitcoin-node is unkillable, but that it aborts

    steps to reproduce:

    • build bitcoin-node from v30.0rc3 tag
    • clone https://github.com/plebhash/sv2-bitcoin-core
    • check out 2025-10-06-abort-proxy-io branch
    • launch bitcoin-node with -ipc-bind=unix
    • launch sv2-bitcoin-core with cargo run --example logger "/path/to/node.sock"

    here’s a stack trace of bitcoin-node with a failed assertion at file proxy-io.h, line 289:

    https://pastebin.com/uugSA6cD

    and another one with a failed assertion at file proxy.h, line 59:

    https://pastebin.com/g2NBei2n

    (exceeds 65536 characters so github doesn’t allow me to paste here, I hope I’m not violating any rules)

  2. plebhash commented at 10:45 pm on October 6, 2025: none
    also reproducible on v30-0rc1 tag
  3. plebhash commented at 10:57 pm on October 6, 2025: none

    one relevant detail here is that our rust code has evolved from what it looked like when I first reported #33463, and there I did not witness this behavior

    now, every 10s, we receive a Sv2 CoinbaseOutputConstraints message, which is meant to set the coinbase parameters with regards to blockspace consumption (weight and sigops)

    so everytime this message arrives, we create a fresh new BlockTemplate IPC client with those new parameters

    we do not call destroy on the previous one, because we don’t know if we could still receive a submitSolution associated with a template that was generated from it

    so we keep clones of past BlockTemplate IPC client in memory (as many clones as templates generated from the same instance) and drop them all whenever there’s a new chain tip (also without calling destroy)

  4. ryanofsky commented at 0:44 am on October 7, 2025: contributor

    (So far I’m not able to reproduce a crash with v30.0rc3, but that might just be because I was testing with regtest.)

    The assert you see happening on line 289 just happens when the IPC client asks the server to execute multiple IPC calls simultaneously on the same thread. The IPC server does not expect this and currently aborts when it happens.

    It is possible for the server to execute multiple IPC calls simultaneously, but the client needs to create more than one thread thread with ThreadMap.makeThread and assign different threads to the IPC calls that are supposed to execute simultaneously.

    The server is pretty fragile and unhelpful for failing this way, but a recently merged PR https://github.com/bitcoin-core/libmultiprocess/pull/214 should make the situation better by having the server return with a “thread busy” error instead of aborting when this happens.

  5. fanquake added the label interfaces on Oct 7, 2025
  6. ryanofsky commented at 1:19 pm on October 7, 2025: contributor

    Just to be clear about next steps, the node aborts should be prevented by https://github.com/bitcoin-core/libmultiprocess/pull/214 which is set to be backported in #33519. (The aborts were originally intentional but are an unnecessarily harsh way to fail, so those PR’s replace them with IPC “thread busy” errors.)

    Regardless of this, the rust client code needs to be changed to either not make other IPC calls at the same time as there is an active waitNext() IPC call, or to just create more server threads and request the waitNext call to run on a different thread than the other IPC calls.

  7. plebhash commented at 8:40 pm on October 7, 2025: none

    I updated the code with the advice above and bitcoin-node no longer crashes during normal operation… I can leave it running for hours without a crash.

    But if I kill my rust code, it still causes a crash on bitcoin-node… I wonder if I’m still doing something wrong on shutdown?

    steps to reproduce:

    • build bitcoin-node from #33519
    • clone https://github.com/plebhash/sv2-bitcoin-core
    • check out 2025-10-06-abort-proxy-io branch
    • launch bitcoin-node with -ipc-bind=unix (connected to testnet4)
    • launch sv2-bitcoin-core with cargo run --example logger "/path/to/node.sock"
    • wait for at least one mempool fee change
    • kill the rust code with ctrl+c

    here’s stack trace:

      0Assertion failed: (m_loop), function operator*, file proxy.h, line 59.
      1Process 6886 stopped
      2* thread [#45](/bitcoin-bitcoin/45/), stop reason = hit program assert
      3    frame [#4](/bitcoin-bitcoin/4/): 0x0000000100620940 bitcoin-node`mp::EventLoopRef::operator*(this=<unavailable>) const at proxy.h:59:36 [opt] [inlined]
      4Target 0: (bitcoin-node) stopped.
      5warning: bitcoin-node was compiled with optimization - stepping may behave oddly; variables may not be available.
      6(lldb) thread backtrace all
      7  thread [#1](/bitcoin-bitcoin/1/), queue = 'com.apple.main-thread'
      8    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa67dc libsystem_kernel.dylib`read + 8
      9    frame [#1](/bitcoin-bitcoin/1/): 0x000000010074df40 bitcoin-node`TokenPipeEnd::TokenRead(this=0x0000000100a38788) at tokenpipe.cpp:60:26 [opt]
     10    frame [#2](/bitcoin-bitcoin/2/): 0x000000010073a600 bitcoin-node`util::SignalInterrupt::wait(this=<unavailable>) at signalinterrupt.cpp:69:24 [opt]
     11    frame [#3](/bitcoin-bitcoin/3/): 0x00000001000042f4 bitcoin-node`main(argc=<unavailable>, argv=<unavailable>) at bitcoind.cpp:283:58 [opt]
     12    frame [#4](/bitcoin-bitcoin/4/): 0x000000018cc46b98 dyld`start + 6076
     13  thread [#2](/bitcoin-bitcoin/2/), name = 'b-scheduler'
     14    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
     15    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
     16    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18300 libc++.1.dylib`std::__1::condition_variable::__do_timed_wait(std::__1::unique_lock<std::__1::mutex>&, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l>>>) + 104
     17    frame [#3](/bitcoin-bitcoin/3/): 0x00000001006baf5c bitcoin-node`std::__1::cv_status std::__1::condition_variable::wait_for<long long, std::__1::ratio<1l, 1000000000l>>(this=<unavailable>, __lk=0x000000016fe86e68, __d=<unavailable>) at condition_variable.h:0 [opt] [inlined]
     18    frame [#4](/bitcoin-bitcoin/4/): 0x00000001006baf4c bitcoin-node`void std::__1::condition_variable::__do_timed_wait[abi:ne200100]<std::__1::chrono::steady_clock>(this=<unavailable>, __lk=0x000000016fe86e68, __tp=time_point<std::__1::chrono::steady_clock, std::__1::chrono::duration<long long, std::__1::ratio<1L, 1000000000L> > > @ x23) at condition_variable.h:235:3 [opt] [inlined]
     19    frame [#5](/bitcoin-bitcoin/5/): 0x00000001006baf4c bitcoin-node`std::__1::cv_status std::__1::condition_variable::wait_until<std::__1::chrono::steady_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l>>>(this=<unavailable>, __lk=0x000000016fe86e68, __t=<unavailable>) at condition_variable.h:161:3 [opt] [inlined]
     20    frame [#6](/bitcoin-bitcoin/6/): 0x00000001006baf4c bitcoin-node`CScheduler::serviceQueue(this=0x000060000214c000) at scheduler.cpp:43:38 [opt]
     21    frame [#7](/bitcoin-bitcoin/7/): 0x000000010074c844 bitcoin-node`std::__1::__function::__value_func<void ()>::operator()[abi:ne200100](this=0x000000016fe86f78) const at function.h:436:12 [opt] [inlined]
     22    frame [#8](/bitcoin-bitcoin/8/): 0x000000010074c830 bitcoin-node`std::__1::function<void ()>::operator()(this=0x000000016fe86f78) const at function.h:995:10 [opt] [inlined]
     23    frame [#9](/bitcoin-bitcoin/9/): 0x000000010074c830 bitcoin-node`util::TraceThread(thread_name="scheduler", thread_func=function<void ()> @ 0x000000016fe86f78) at thread.cpp:21:9 [opt]
     24    frame [#10](/bitcoin-bitcoin/10/): 0x0000000100088eac bitcoin-node`decltype(std::declval<void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>)>()(std::declval<char const*>(), std::declval<AppInitMain(node::NodeContext&, interfaces::BlockAndHeaderTipInfo*)::$_7>())) std::__1::__invoke[abi:ne200100]<void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>), char const*, AppInitMain(node::NodeContext&, interfaces::BlockAndHeaderTipInfo*)::$_7>(__f=0x000060000104daa8, __args=0x000060000104dab0, __args=0x000060000104dab8) at invoke.h:179:25 [opt] [inlined]
     25    frame [#11](/bitcoin-bitcoin/11/): 0x0000000100088e78 bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>), char const*, AppInitMain(node::NodeContext&, interfaces::BlockAndHeaderTipInfo*)::$_7, 2ul, 3ul>(__t=size=4, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
     26    frame [#12](/bitcoin-bitcoin/12/): 0x0000000100088e78 bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>), char const*, AppInitMain(node::NodeContext&, interfaces::BlockAndHeaderTipInfo*)::$_7>>(__vp=0x000060000104daa0) at thread.h:208:3 [opt]
     27    frame [#13](/bitcoin-bitcoin/13/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
     28  thread [#3](/bitcoin-bitcoin/3/), name = 'b-capnp-loop'
     29    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfabd04 libsystem_kernel.dylib`kevent + 8
     30    frame [#1](/bitcoin-bitcoin/1/): 0x000000010145ce70 libkj-async.1.0.2.dylib`kj::UnixEventPort::doKqueueWait(timespec*) + 76
     31    frame [#2](/bitcoin-bitcoin/2/): 0x000000010145d470 libkj-async.1.0.2.dylib`kj::UnixEventPort::wait() + 144
     32    frame [#3](/bitcoin-bitcoin/3/): 0x000000010144f46c libkj-async.1.0.2.dylib`kj::EventLoop::wait() + 40
     33    frame [#4](/bitcoin-bitcoin/4/): 0x000000010144faa8 libkj-async.1.0.2.dylib`kj::_::waitImpl(kj::Own<kj::_::PromiseNode, kj::_::PromiseDisposer>&&, kj::_::ExceptionOrValue&, kj::WaitScope&, kj::SourceLocation) + 528
     34    frame [#5](/bitcoin-bitcoin/5/): 0x0000000100622b28 bitcoin-node`kj::Promise<unsigned long>::wait(this=<unavailable>, waitScope=<unavailable>, location=(fileName = "ipc/libmultiprocess/src/mp/proxy.cpp", function = "loop", lineNumber = 240, columnNumber = 68)) at async-inl.h:1357:3 [opt]
     35    frame [#6](/bitcoin-bitcoin/6/): 0x0000000100622168 bitcoin-node`mp::EventLoop::loop(this=0x0000000127704768) at proxy.cpp:240:68 [opt]
     36    frame [#7](/bitcoin-bitcoin/7/): 0x000000010038e4c4 bitcoin-node`ipc::capnp::(anonymous namespace)::CapnpProtocol::startLoop(char const*)::'lambda'()::operator()(this=0x000060000104dae8) const at protocol.cpp:96:21 [opt] [inlined]
     37    frame [#8](/bitcoin-bitcoin/8/): 0x000000010038e41c bitcoin-node`decltype(std::declval<ipc::capnp::(anonymous namespace)::CapnpProtocol::startLoop(char const*)::'lambda'()>()()) std::__1::__invoke[abi:ne200100]<ipc::capnp::(anonymous namespace)::CapnpProtocol::startLoop(char const*)::'lambda'()>(__f=0x000060000104dae8) at invoke.h:179:25 [opt] [inlined]
     38    frame [#9](/bitcoin-bitcoin/9/): 0x000000010038e41c bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<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'()>(__t=size=2, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
     39    frame [#10](/bitcoin-bitcoin/10/): 0x000000010038e41c bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<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'()>>(__vp=0x000060000104dae0) at thread.h:208:3 [opt]
     40    frame [#11](/bitcoin-bitcoin/11/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
     41  thread [#4](/bitcoin-bitcoin/4/), name = 'b-http'
     42    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfabd04 libsystem_kernel.dylib`kevent + 8
     43    frame [#1](/bitcoin-bitcoin/1/): 0x0000000101093a90 libevent_core-2.1.7.dylib`kq_dispatch + 492
     44    frame [#2](/bitcoin-bitcoin/2/): 0x000000010108a0b8 libevent_core-2.1.7.dylib`event_base_loop + 596
     45    frame [#3](/bitcoin-bitcoin/3/): 0x00000001000479a0 bitcoin-node`ThreadHTTP(base=0x0000000127604340) at httpserver.cpp:355:5 [opt]
     46    frame [#4](/bitcoin-bitcoin/4/): 0x000000010004e120 bitcoin-node`decltype(std::declval<void (*)(event_base*)>()(std::declval<event_base*>())) std::__1::__invoke[abi:ne200100]<void (*)(event_base*), event_base*>(__f=0x000060000104db08, __args=0x000060000104db10) at invoke.h:179:25 [opt] [inlined]
     47    frame [#5](/bitcoin-bitcoin/5/): 0x000000010004e118 bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(event_base*), event_base*, 2ul>(__t=size=3, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
     48    frame [#6](/bitcoin-bitcoin/6/): 0x000000010004e118 bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(event_base*), event_base*>>(__vp=0x000060000104db00) at thread.h:208:3 [opt]
     49    frame [#7](/bitcoin-bitcoin/7/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
     50  thread [#5](/bitcoin-bitcoin/5/), name = 'b-httpworker.0'
     51    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
     52    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
     53    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
     54    frame [#3](/bitcoin-bitcoin/3/): 0x000000010004d56c bitcoin-node`WorkQueue<HTTPClosure>::Run(this=0x0000600002748b00) at httpserver.cpp:111:26 [opt]
     55    frame [#4](/bitcoin-bitcoin/4/): 0x0000000100047a94 bitcoin-node`HTTPWorkQueueRun(queue=0x0000600002748b00, worker_num=0) at httpserver.cpp:419:12 [opt]
     56    frame [#5](/bitcoin-bitcoin/5/): 0x000000010004d2c8 bitcoin-node`decltype(std::declval<void (*)(WorkQueue<HTTPClosure>*, int)>()(std::declval<WorkQueue<HTTPClosure>*>(), std::declval<int>())) std::__1::__invoke[abi:ne200100]<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(__f=0x000060000104e588, __args=0x000060000104e590, __args=0x000060000104e598) at invoke.h:179:25 [opt] [inlined]
     57    frame [#6](/bitcoin-bitcoin/6/): 0x000000010004d2bc bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int, 2ul, 3ul>(__t=size=4, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
     58    frame [#7](/bitcoin-bitcoin/7/): 0x000000010004d2bc bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>(__vp=0x000060000104e580) at thread.h:208:3 [opt]
     59    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
     60  thread [#6](/bitcoin-bitcoin/6/), name = 'b-httpworker.1'
     61    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
     62    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
     63    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
     64    frame [#3](/bitcoin-bitcoin/3/): 0x000000010004d56c bitcoin-node`WorkQueue<HTTPClosure>::Run(this=0x0000600002748b00) at httpserver.cpp:111:26 [opt]
     65    frame [#4](/bitcoin-bitcoin/4/): 0x0000000100047a94 bitcoin-node`HTTPWorkQueueRun(queue=0x0000600002748b00, worker_num=1) at httpserver.cpp:419:12 [opt]
     66    frame [#5](/bitcoin-bitcoin/5/): 0x000000010004d2c8 bitcoin-node`decltype(std::declval<void (*)(WorkQueue<HTTPClosure>*, int)>()(std::declval<WorkQueue<HTTPClosure>*>(), std::declval<int>())) std::__1::__invoke[abi:ne200100]<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(__f=0x000060000104df08, __args=0x000060000104df10, __args=0x000060000104df18) at invoke.h:179:25 [opt] [inlined]
     67    frame [#6](/bitcoin-bitcoin/6/): 0x000000010004d2bc bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int, 2ul, 3ul>(__t=size=4, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
     68    frame [#7](/bitcoin-bitcoin/7/): 0x000000010004d2bc bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>(__vp=0x000060000104df00) at thread.h:208:3 [opt]
     69    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
     70  thread [#7](/bitcoin-bitcoin/7/), name = 'b-httpworker.2'
     71    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
     72    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
     73    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
     74    frame [#3](/bitcoin-bitcoin/3/): 0x000000010004d56c bitcoin-node`WorkQueue<HTTPClosure>::Run(this=0x0000600002748b00) at httpserver.cpp:111:26 [opt]
     75    frame [#4](/bitcoin-bitcoin/4/): 0x0000000100047a94 bitcoin-node`HTTPWorkQueueRun(queue=0x0000600002748b00, worker_num=2) at httpserver.cpp:419:12 [opt]
     76    frame [#5](/bitcoin-bitcoin/5/): 0x000000010004d2c8 bitcoin-node`decltype(std::declval<void (*)(WorkQueue<HTTPClosure>*, int)>()(std::declval<WorkQueue<HTTPClosure>*>(), std::declval<int>())) std::__1::__invoke[abi:ne200100]<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(__f=0x000060000104df48, __args=0x000060000104df50, __args=0x000060000104df58) at invoke.h:179:25 [opt] [inlined]
     77    frame [#6](/bitcoin-bitcoin/6/): 0x000000010004d2bc bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int, 2ul, 3ul>(__t=size=4, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
     78    frame [#7](/bitcoin-bitcoin/7/): 0x000000010004d2bc bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>(__vp=0x000060000104df40) at thread.h:208:3 [opt]
     79    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
     80  thread [#8](/bitcoin-bitcoin/8/), name = 'b-httpworker.3'
     81    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
     82    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
     83    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
     84    frame [#3](/bitcoin-bitcoin/3/): 0x000000010004d56c bitcoin-node`WorkQueue<HTTPClosure>::Run(this=0x0000600002748b00) at httpserver.cpp:111:26 [opt]
     85    frame [#4](/bitcoin-bitcoin/4/): 0x0000000100047a94 bitcoin-node`HTTPWorkQueueRun(queue=0x0000600002748b00, worker_num=3) at httpserver.cpp:419:12 [opt]
     86    frame [#5](/bitcoin-bitcoin/5/): 0x000000010004d2c8 bitcoin-node`decltype(std::declval<void (*)(WorkQueue<HTTPClosure>*, int)>()(std::declval<WorkQueue<HTTPClosure>*>(), std::declval<int>())) std::__1::__invoke[abi:ne200100]<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(__f=0x000060000104df68, __args=0x000060000104df70, __args=0x000060000104df78) at invoke.h:179:25 [opt] [inlined]
     87    frame [#6](/bitcoin-bitcoin/6/): 0x000000010004d2bc bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int, 2ul, 3ul>(__t=size=4, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
     88    frame [#7](/bitcoin-bitcoin/7/): 0x000000010004d2bc bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>(__vp=0x000060000104df60) at thread.h:208:3 [opt]
     89    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
     90  thread [#9](/bitcoin-bitcoin/9/), name = 'b-httpworker.4'
     91    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
     92    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
     93    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
     94    frame [#3](/bitcoin-bitcoin/3/): 0x000000010004d56c bitcoin-node`WorkQueue<HTTPClosure>::Run(this=0x0000600002748b00) at httpserver.cpp:111:26 [opt]
     95    frame [#4](/bitcoin-bitcoin/4/): 0x0000000100047a94 bitcoin-node`HTTPWorkQueueRun(queue=0x0000600002748b00, worker_num=4) at httpserver.cpp:419:12 [opt]
     96    frame [#5](/bitcoin-bitcoin/5/): 0x000000010004d2c8 bitcoin-node`decltype(std::declval<void (*)(WorkQueue<HTTPClosure>*, int)>()(std::declval<WorkQueue<HTTPClosure>*>(), std::declval<int>())) std::__1::__invoke[abi:ne200100]<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(__f=0x000060000104df88, __args=0x000060000104df90, __args=0x000060000104df98) at invoke.h:179:25 [opt] [inlined]
     97    frame [#6](/bitcoin-bitcoin/6/): 0x000000010004d2bc bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int, 2ul, 3ul>(__t=size=4, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
     98    frame [#7](/bitcoin-bitcoin/7/): 0x000000010004d2bc bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>(__vp=0x000060000104df80) at thread.h:208:3 [opt]
     99    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    100  thread [#10](/bitcoin-bitcoin/10/), name = 'b-httpworker.5'
    101    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    102    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    103    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
    104    frame [#3](/bitcoin-bitcoin/3/): 0x000000010004d56c bitcoin-node`WorkQueue<HTTPClosure>::Run(this=0x0000600002748b00) at httpserver.cpp:111:26 [opt]
    105    frame [#4](/bitcoin-bitcoin/4/): 0x0000000100047a94 bitcoin-node`HTTPWorkQueueRun(queue=0x0000600002748b00, worker_num=5) at httpserver.cpp:419:12 [opt]
    106    frame [#5](/bitcoin-bitcoin/5/): 0x000000010004d2c8 bitcoin-node`decltype(std::declval<void (*)(WorkQueue<HTTPClosure>*, int)>()(std::declval<WorkQueue<HTTPClosure>*>(), std::declval<int>())) std::__1::__invoke[abi:ne200100]<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(__f=0x000060000104df28, __args=0x000060000104df30, __args=0x000060000104df38) at invoke.h:179:25 [opt] [inlined]
    107    frame [#6](/bitcoin-bitcoin/6/): 0x000000010004d2bc bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int, 2ul, 3ul>(__t=size=4, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    108    frame [#7](/bitcoin-bitcoin/7/): 0x000000010004d2bc bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>(__vp=0x000060000104df20) at thread.h:208:3 [opt]
    109    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    110  thread [#11](/bitcoin-bitcoin/11/), name = 'b-httpworker.6'
    111    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    112    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    113    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
    114    frame [#3](/bitcoin-bitcoin/3/): 0x000000010004d56c bitcoin-node`WorkQueue<HTTPClosure>::Run(this=0x0000600002748b00) at httpserver.cpp:111:26 [opt]
    115    frame [#4](/bitcoin-bitcoin/4/): 0x0000000100047a94 bitcoin-node`HTTPWorkQueueRun(queue=0x0000600002748b00, worker_num=6) at httpserver.cpp:419:12 [opt]
    116    frame [#5](/bitcoin-bitcoin/5/): 0x000000010004d2c8 bitcoin-node`decltype(std::declval<void (*)(WorkQueue<HTTPClosure>*, int)>()(std::declval<WorkQueue<HTTPClosure>*>(), std::declval<int>())) std::__1::__invoke[abi:ne200100]<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(__f=0x000060000104dfa8, __args=0x000060000104dfb0, __args=0x000060000104dfb8) at invoke.h:179:25 [opt] [inlined]
    117    frame [#6](/bitcoin-bitcoin/6/): 0x000000010004d2bc bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int, 2ul, 3ul>(__t=size=4, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    118    frame [#7](/bitcoin-bitcoin/7/): 0x000000010004d2bc bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>(__vp=0x000060000104dfa0) at thread.h:208:3 [opt]
    119    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    120  thread [#12](/bitcoin-bitcoin/12/), name = 'b-httpworker.7'
    121    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    122    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    123    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
    124    frame [#3](/bitcoin-bitcoin/3/): 0x000000010004d56c bitcoin-node`WorkQueue<HTTPClosure>::Run(this=0x0000600002748b00) at httpserver.cpp:111:26 [opt]
    125    frame [#4](/bitcoin-bitcoin/4/): 0x0000000100047a94 bitcoin-node`HTTPWorkQueueRun(queue=0x0000600002748b00, worker_num=7) at httpserver.cpp:419:12 [opt]
    126    frame [#5](/bitcoin-bitcoin/5/): 0x000000010004d2c8 bitcoin-node`decltype(std::declval<void (*)(WorkQueue<HTTPClosure>*, int)>()(std::declval<WorkQueue<HTTPClosure>*>(), std::declval<int>())) std::__1::__invoke[abi:ne200100]<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(__f=0x000060000104dfc8, __args=0x000060000104dfd0, __args=0x000060000104dfd8) at invoke.h:179:25 [opt] [inlined]
    127    frame [#6](/bitcoin-bitcoin/6/): 0x000000010004d2bc bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int, 2ul, 3ul>(__t=size=4, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    128    frame [#7](/bitcoin-bitcoin/7/): 0x000000010004d2bc bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>(__vp=0x000060000104dfc0) at thread.h:208:3 [opt]
    129    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    130  thread [#13](/bitcoin-bitcoin/13/), name = 'b-httpworker.8'
    131    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    132    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    133    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
    134    frame [#3](/bitcoin-bitcoin/3/): 0x000000010004d56c bitcoin-node`WorkQueue<HTTPClosure>::Run(this=0x0000600002748b00) at httpserver.cpp:111:26 [opt]
    135    frame [#4](/bitcoin-bitcoin/4/): 0x0000000100047a94 bitcoin-node`HTTPWorkQueueRun(queue=0x0000600002748b00, worker_num=8) at httpserver.cpp:419:12 [opt]
    136    frame [#5](/bitcoin-bitcoin/5/): 0x000000010004d2c8 bitcoin-node`decltype(std::declval<void (*)(WorkQueue<HTTPClosure>*, int)>()(std::declval<WorkQueue<HTTPClosure>*>(), std::declval<int>())) std::__1::__invoke[abi:ne200100]<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(__f=0x000060000104dfe8, __args=0x000060000104dff0, __args=0x000060000104dff8) at invoke.h:179:25 [opt] [inlined]
    137    frame [#6](/bitcoin-bitcoin/6/): 0x000000010004d2bc bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int, 2ul, 3ul>(__t=size=4, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    138    frame [#7](/bitcoin-bitcoin/7/): 0x000000010004d2bc bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>(__vp=0x000060000104dfe0) at thread.h:208:3 [opt]
    139    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    140  thread [#14](/bitcoin-bitcoin/14/), name = 'b-httpworker.9'
    141    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    142    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    143    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
    144    frame [#3](/bitcoin-bitcoin/3/): 0x000000010004d56c bitcoin-node`WorkQueue<HTTPClosure>::Run(this=0x0000600002748b00) at httpserver.cpp:111:26 [opt]
    145    frame [#4](/bitcoin-bitcoin/4/): 0x0000000100047a94 bitcoin-node`HTTPWorkQueueRun(queue=0x0000600002748b00, worker_num=9) at httpserver.cpp:419:12 [opt]
    146    frame [#5](/bitcoin-bitcoin/5/): 0x000000010004d2c8 bitcoin-node`decltype(std::declval<void (*)(WorkQueue<HTTPClosure>*, int)>()(std::declval<WorkQueue<HTTPClosure>*>(), std::declval<int>())) std::__1::__invoke[abi:ne200100]<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(__f=0x000060000104e008, __args=0x000060000104e010, __args=0x000060000104e018) at invoke.h:179:25 [opt] [inlined]
    147    frame [#6](/bitcoin-bitcoin/6/): 0x000000010004d2bc bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int, 2ul, 3ul>(__t=size=4, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    148    frame [#7](/bitcoin-bitcoin/7/): 0x000000010004d2bc bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>(__vp=0x000060000104e000) at thread.h:208:3 [opt]
    149    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    150  thread [#15](/bitcoin-bitcoin/15/), name = 'b-httpworker.10'
    151    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    152    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    153    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
    154    frame [#3](/bitcoin-bitcoin/3/): 0x000000010004d56c bitcoin-node`WorkQueue<HTTPClosure>::Run(this=0x0000600002748b00) at httpserver.cpp:111:26 [opt]
    155    frame [#4](/bitcoin-bitcoin/4/): 0x0000000100047a94 bitcoin-node`HTTPWorkQueueRun(queue=0x0000600002748b00, worker_num=10) at httpserver.cpp:419:12 [opt]
    156    frame [#5](/bitcoin-bitcoin/5/): 0x000000010004d2c8 bitcoin-node`decltype(std::declval<void (*)(WorkQueue<HTTPClosure>*, int)>()(std::declval<WorkQueue<HTTPClosure>*>(), std::declval<int>())) std::__1::__invoke[abi:ne200100]<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(__f=0x000060000104e028, __args=0x000060000104e030, __args=0x000060000104e038) at invoke.h:179:25 [opt] [inlined]
    157    frame [#6](/bitcoin-bitcoin/6/): 0x000000010004d2bc bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int, 2ul, 3ul>(__t=size=4, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    158    frame [#7](/bitcoin-bitcoin/7/): 0x000000010004d2bc bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>(__vp=0x000060000104e020) at thread.h:208:3 [opt]
    159    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    160  thread [#16](/bitcoin-bitcoin/16/), name = 'b-httpworker.11'
    161    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    162    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    163    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
    164    frame [#3](/bitcoin-bitcoin/3/): 0x000000010004d56c bitcoin-node`WorkQueue<HTTPClosure>::Run(this=0x0000600002748b00) at httpserver.cpp:111:26 [opt]
    165    frame [#4](/bitcoin-bitcoin/4/): 0x0000000100047a94 bitcoin-node`HTTPWorkQueueRun(queue=0x0000600002748b00, worker_num=11) at httpserver.cpp:419:12 [opt]
    166    frame [#5](/bitcoin-bitcoin/5/): 0x000000010004d2c8 bitcoin-node`decltype(std::declval<void (*)(WorkQueue<HTTPClosure>*, int)>()(std::declval<WorkQueue<HTTPClosure>*>(), std::declval<int>())) std::__1::__invoke[abi:ne200100]<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(__f=0x000060000104e048, __args=0x000060000104e050, __args=0x000060000104e058) at invoke.h:179:25 [opt] [inlined]
    167    frame [#6](/bitcoin-bitcoin/6/): 0x000000010004d2bc bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int, 2ul, 3ul>(__t=size=4, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    168    frame [#7](/bitcoin-bitcoin/7/): 0x000000010004d2bc bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>(__vp=0x000060000104e040) at thread.h:208:3 [opt]
    169    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    170  thread [#17](/bitcoin-bitcoin/17/), name = 'b-httpworker.12'
    171    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    172    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    173    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
    174    frame [#3](/bitcoin-bitcoin/3/): 0x000000010004d56c bitcoin-node`WorkQueue<HTTPClosure>::Run(this=0x0000600002748b00) at httpserver.cpp:111:26 [opt]
    175    frame [#4](/bitcoin-bitcoin/4/): 0x0000000100047a94 bitcoin-node`HTTPWorkQueueRun(queue=0x0000600002748b00, worker_num=12) at httpserver.cpp:419:12 [opt]
    176    frame [#5](/bitcoin-bitcoin/5/): 0x000000010004d2c8 bitcoin-node`decltype(std::declval<void (*)(WorkQueue<HTTPClosure>*, int)>()(std::declval<WorkQueue<HTTPClosure>*>(), std::declval<int>())) std::__1::__invoke[abi:ne200100]<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(__f=0x000060000104e068, __args=0x000060000104e070, __args=0x000060000104e078) at invoke.h:179:25 [opt] [inlined]
    177    frame [#6](/bitcoin-bitcoin/6/): 0x000000010004d2bc bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int, 2ul, 3ul>(__t=size=4, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    178    frame [#7](/bitcoin-bitcoin/7/): 0x000000010004d2bc bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>(__vp=0x000060000104e060) at thread.h:208:3 [opt]
    179    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    180  thread [#18](/bitcoin-bitcoin/18/), name = 'b-httpworker.13'
    181    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    182    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    183    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
    184    frame [#3](/bitcoin-bitcoin/3/): 0x000000010004d56c bitcoin-node`WorkQueue<HTTPClosure>::Run(this=0x0000600002748b00) at httpserver.cpp:111:26 [opt]
    185    frame [#4](/bitcoin-bitcoin/4/): 0x0000000100047a94 bitcoin-node`HTTPWorkQueueRun(queue=0x0000600002748b00, worker_num=13) at httpserver.cpp:419:12 [opt]
    186    frame [#5](/bitcoin-bitcoin/5/): 0x000000010004d2c8 bitcoin-node`decltype(std::declval<void (*)(WorkQueue<HTTPClosure>*, int)>()(std::declval<WorkQueue<HTTPClosure>*>(), std::declval<int>())) std::__1::__invoke[abi:ne200100]<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(__f=0x000060000104ea88, __args=0x000060000104ea90, __args=0x000060000104ea98) at invoke.h:179:25 [opt] [inlined]
    187    frame [#6](/bitcoin-bitcoin/6/): 0x000000010004d2bc bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int, 2ul, 3ul>(__t=size=4, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    188    frame [#7](/bitcoin-bitcoin/7/): 0x000000010004d2bc bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>(__vp=0x000060000104ea80) at thread.h:208:3 [opt]
    189    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    190  thread [#19](/bitcoin-bitcoin/19/), name = 'b-httpworker.14'
    191    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    192    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    193    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
    194    frame [#3](/bitcoin-bitcoin/3/): 0x000000010004d56c bitcoin-node`WorkQueue<HTTPClosure>::Run(this=0x0000600002748b00) at httpserver.cpp:111:26 [opt]
    195    frame [#4](/bitcoin-bitcoin/4/): 0x0000000100047a94 bitcoin-node`HTTPWorkQueueRun(queue=0x0000600002748b00, worker_num=14) at httpserver.cpp:419:12 [opt]
    196    frame [#5](/bitcoin-bitcoin/5/): 0x000000010004d2c8 bitcoin-node`decltype(std::declval<void (*)(WorkQueue<HTTPClosure>*, int)>()(std::declval<WorkQueue<HTTPClosure>*>(), std::declval<int>())) std::__1::__invoke[abi:ne200100]<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(__f=0x000060000104eaa8, __args=0x000060000104eab0, __args=0x000060000104eab8) at invoke.h:179:25 [opt] [inlined]
    197    frame [#6](/bitcoin-bitcoin/6/): 0x000000010004d2bc bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int, 2ul, 3ul>(__t=size=4, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    198    frame [#7](/bitcoin-bitcoin/7/): 0x000000010004d2bc bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>(__vp=0x000060000104eaa0) at thread.h:208:3 [opt]
    199    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    200  thread [#20](/bitcoin-bitcoin/20/), name = 'b-httpworker.15'
    201    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    202    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    203    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
    204    frame [#3](/bitcoin-bitcoin/3/): 0x000000010004d56c bitcoin-node`WorkQueue<HTTPClosure>::Run(this=0x0000600002748b00) at httpserver.cpp:111:26 [opt]
    205    frame [#4](/bitcoin-bitcoin/4/): 0x0000000100047a94 bitcoin-node`HTTPWorkQueueRun(queue=0x0000600002748b00, worker_num=15) at httpserver.cpp:419:12 [opt]
    206    frame [#5](/bitcoin-bitcoin/5/): 0x000000010004d2c8 bitcoin-node`decltype(std::declval<void (*)(WorkQueue<HTTPClosure>*, int)>()(std::declval<WorkQueue<HTTPClosure>*>(), std::declval<int>())) std::__1::__invoke[abi:ne200100]<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(__f=0x000060000104eac8, __args=0x000060000104ead0, __args=0x000060000104ead8) at invoke.h:179:25 [opt] [inlined]
    207    frame [#6](/bitcoin-bitcoin/6/): 0x000000010004d2bc bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int, 2ul, 3ul>(__t=size=4, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    208    frame [#7](/bitcoin-bitcoin/7/): 0x000000010004d2bc bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>(__vp=0x000060000104eac0) at thread.h:208:3 [opt]
    209    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    210  thread [#21](/bitcoin-bitcoin/21/), name = 'b-scriptch.0'
    211    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    212    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    213    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
    214    frame [#3](/bitcoin-bitcoin/3/): 0x0000000100375a34 bitcoin-node`CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::Loop(this=0x000000012800ca30, fMaster=<unavailable>) at checkqueue.h:108:26 [opt]
    215    frame [#4](/bitcoin-bitcoin/4/): 0x000000010037dc84 bitcoin-node`CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()::operator()(this=<unavailable>) const at checkqueue.h:152:17 [opt]
    216    frame [#5](/bitcoin-bitcoin/5/): 0x000000010037db28 bitcoin-node`decltype(std::declval<CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>()()) std::__1::__invoke[abi:ne200100]<CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>(__f=<unavailable>) at invoke.h:179:25 [opt] [inlined]
    217    frame [#6](/bitcoin-bitcoin/6/): 0x000000010037db24 bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>(__t=size=2, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    218    frame [#7](/bitcoin-bitcoin/7/): 0x000000010037db20 bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>>(__vp=0x000060000104d6e0) at thread.h:208:3 [opt]
    219    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    220  thread [#22](/bitcoin-bitcoin/22/), name = 'b-scriptch.1'
    221    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    222    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    223    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
    224    frame [#3](/bitcoin-bitcoin/3/): 0x0000000100375a34 bitcoin-node`CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::Loop(this=0x000000012800ca30, fMaster=<unavailable>) at checkqueue.h:108:26 [opt]
    225    frame [#4](/bitcoin-bitcoin/4/): 0x000000010037dc84 bitcoin-node`CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()::operator()(this=<unavailable>) const at checkqueue.h:152:17 [opt]
    226    frame [#5](/bitcoin-bitcoin/5/): 0x000000010037db28 bitcoin-node`decltype(std::declval<CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>()()) std::__1::__invoke[abi:ne200100]<CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>(__f=<unavailable>) at invoke.h:179:25 [opt] [inlined]
    227    frame [#6](/bitcoin-bitcoin/6/): 0x000000010037db24 bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>(__t=size=2, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    228    frame [#7](/bitcoin-bitcoin/7/): 0x000000010037db20 bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>>(__vp=0x000060000104eb40) at thread.h:208:3 [opt]
    229    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    230  thread [#23](/bitcoin-bitcoin/23/), name = 'b-scriptch.2'
    231    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    232    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    233    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
    234    frame [#3](/bitcoin-bitcoin/3/): 0x0000000100375a34 bitcoin-node`CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::Loop(this=0x000000012800ca30, fMaster=<unavailable>) at checkqueue.h:108:26 [opt]
    235    frame [#4](/bitcoin-bitcoin/4/): 0x000000010037dc84 bitcoin-node`CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()::operator()(this=<unavailable>) const at checkqueue.h:152:17 [opt]
    236    frame [#5](/bitcoin-bitcoin/5/): 0x000000010037db28 bitcoin-node`decltype(std::declval<CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>()()) std::__1::__invoke[abi:ne200100]<CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>(__f=<unavailable>) at invoke.h:179:25 [opt] [inlined]
    237    frame [#6](/bitcoin-bitcoin/6/): 0x000000010037db24 bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>(__t=size=2, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    238    frame [#7](/bitcoin-bitcoin/7/): 0x000000010037db20 bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>>(__vp=0x000060000104eb60) at thread.h:208:3 [opt]
    239    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    240  thread [#24](/bitcoin-bitcoin/24/), name = 'b-scriptch.3'
    241    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    242    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    243    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
    244    frame [#3](/bitcoin-bitcoin/3/): 0x0000000100375a34 bitcoin-node`CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::Loop(this=0x000000012800ca30, fMaster=<unavailable>) at checkqueue.h:108:26 [opt]
    245    frame [#4](/bitcoin-bitcoin/4/): 0x000000010037dc84 bitcoin-node`CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()::operator()(this=<unavailable>) const at checkqueue.h:152:17 [opt]
    246    frame [#5](/bitcoin-bitcoin/5/): 0x000000010037db28 bitcoin-node`decltype(std::declval<CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>()()) std::__1::__invoke[abi:ne200100]<CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>(__f=<unavailable>) at invoke.h:179:25 [opt] [inlined]
    247    frame [#6](/bitcoin-bitcoin/6/): 0x000000010037db24 bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>(__t=size=2, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    248    frame [#7](/bitcoin-bitcoin/7/): 0x000000010037db20 bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>>(__vp=0x000060000104eb80) at thread.h:208:3 [opt]
    249    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    250  thread [#25](/bitcoin-bitcoin/25/), name = 'b-scriptch.4'
    251    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    252    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    253    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
    254    frame [#3](/bitcoin-bitcoin/3/): 0x0000000100375a34 bitcoin-node`CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::Loop(this=0x000000012800ca30, fMaster=<unavailable>) at checkqueue.h:108:26 [opt]
    255    frame [#4](/bitcoin-bitcoin/4/): 0x000000010037dc84 bitcoin-node`CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()::operator()(this=<unavailable>) const at checkqueue.h:152:17 [opt]
    256    frame [#5](/bitcoin-bitcoin/5/): 0x000000010037db28 bitcoin-node`decltype(std::declval<CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>()()) std::__1::__invoke[abi:ne200100]<CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>(__f=<unavailable>) at invoke.h:179:25 [opt] [inlined]
    257    frame [#6](/bitcoin-bitcoin/6/): 0x000000010037db24 bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>(__t=size=2, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    258    frame [#7](/bitcoin-bitcoin/7/): 0x000000010037db20 bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>>(__vp=0x0000600001040000) at thread.h:208:3 [opt]
    259    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    260  thread [#26](/bitcoin-bitcoin/26/), name = 'b-scriptch.5'
    261    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    262    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    263    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
    264    frame [#3](/bitcoin-bitcoin/3/): 0x0000000100375a34 bitcoin-node`CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::Loop(this=0x000000012800ca30, fMaster=<unavailable>) at checkqueue.h:108:26 [opt]
    265    frame [#4](/bitcoin-bitcoin/4/): 0x000000010037dc84 bitcoin-node`CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()::operator()(this=<unavailable>) const at checkqueue.h:152:17 [opt]
    266    frame [#5](/bitcoin-bitcoin/5/): 0x000000010037db28 bitcoin-node`decltype(std::declval<CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>()()) std::__1::__invoke[abi:ne200100]<CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>(__f=<unavailable>) at invoke.h:179:25 [opt] [inlined]
    267    frame [#6](/bitcoin-bitcoin/6/): 0x000000010037db24 bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>(__t=size=2, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    268    frame [#7](/bitcoin-bitcoin/7/): 0x000000010037db20 bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>>(__vp=0x0000600001040020) at thread.h:208:3 [opt]
    269    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    270  thread [#27](/bitcoin-bitcoin/27/), name = 'b-scriptch.6'
    271    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    272    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    273    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
    274    frame [#3](/bitcoin-bitcoin/3/): 0x0000000100375a34 bitcoin-node`CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::Loop(this=0x000000012800ca30, fMaster=<unavailable>) at checkqueue.h:108:26 [opt]
    275    frame [#4](/bitcoin-bitcoin/4/): 0x000000010037dc84 bitcoin-node`CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()::operator()(this=<unavailable>) const at checkqueue.h:152:17 [opt]
    276    frame [#5](/bitcoin-bitcoin/5/): 0x000000010037db28 bitcoin-node`decltype(std::declval<CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>()()) std::__1::__invoke[abi:ne200100]<CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>(__f=<unavailable>) at invoke.h:179:25 [opt] [inlined]
    277    frame [#6](/bitcoin-bitcoin/6/): 0x000000010037db24 bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>(__t=size=2, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    278    frame [#7](/bitcoin-bitcoin/7/): 0x000000010037db20 bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>>(__vp=0x0000600001040040) at thread.h:208:3 [opt]
    279    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    280  thread [#28](/bitcoin-bitcoin/28/), name = 'b-scriptch.7'
    281    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    282    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    283    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
    284    frame [#3](/bitcoin-bitcoin/3/): 0x0000000100375a34 bitcoin-node`CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::Loop(this=0x000000012800ca30, fMaster=<unavailable>) at checkqueue.h:108:26 [opt]
    285    frame [#4](/bitcoin-bitcoin/4/): 0x000000010037dc84 bitcoin-node`CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()::operator()(this=<unavailable>) const at checkqueue.h:152:17 [opt]
    286    frame [#5](/bitcoin-bitcoin/5/): 0x000000010037db28 bitcoin-node`decltype(std::declval<CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>()()) std::__1::__invoke[abi:ne200100]<CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>(__f=<unavailable>) at invoke.h:179:25 [opt] [inlined]
    287    frame [#6](/bitcoin-bitcoin/6/): 0x000000010037db24 bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>(__t=size=2, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    288    frame [#7](/bitcoin-bitcoin/7/): 0x000000010037db20 bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>>(__vp=0x0000600001040060) at thread.h:208:3 [opt]
    289    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    290  thread [#29](/bitcoin-bitcoin/29/), name = 'b-scriptch.8'
    291    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    292    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    293    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
    294    frame [#3](/bitcoin-bitcoin/3/): 0x0000000100375a34 bitcoin-node`CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::Loop(this=0x000000012800ca30, fMaster=<unavailable>) at checkqueue.h:108:26 [opt]
    295    frame [#4](/bitcoin-bitcoin/4/): 0x000000010037dc84 bitcoin-node`CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()::operator()(this=<unavailable>) const at checkqueue.h:152:17 [opt]
    296    frame [#5](/bitcoin-bitcoin/5/): 0x000000010037db28 bitcoin-node`decltype(std::declval<CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>()()) std::__1::__invoke[abi:ne200100]<CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>(__f=<unavailable>) at invoke.h:179:25 [opt] [inlined]
    297    frame [#6](/bitcoin-bitcoin/6/): 0x000000010037db24 bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>(__t=size=2, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    298    frame [#7](/bitcoin-bitcoin/7/): 0x000000010037db20 bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>>(__vp=0x0000600001040080) at thread.h:208:3 [opt]
    299    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    300  thread [#30](/bitcoin-bitcoin/30/), name = 'b-scriptch.9'
    301    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    302    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    303    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
    304    frame [#3](/bitcoin-bitcoin/3/): 0x0000000100375a34 bitcoin-node`CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::Loop(this=0x000000012800ca30, fMaster=<unavailable>) at checkqueue.h:108:26 [opt]
    305    frame [#4](/bitcoin-bitcoin/4/): 0x000000010037dc84 bitcoin-node`CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()::operator()(this=<unavailable>) const at checkqueue.h:152:17 [opt]
    306    frame [#5](/bitcoin-bitcoin/5/): 0x000000010037db28 bitcoin-node`decltype(std::declval<CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>()()) std::__1::__invoke[abi:ne200100]<CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>(__f=<unavailable>) at invoke.h:179:25 [opt] [inlined]
    307    frame [#6](/bitcoin-bitcoin/6/): 0x000000010037db24 bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>(__t=size=2, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    308    frame [#7](/bitcoin-bitcoin/7/): 0x000000010037db20 bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>>(__vp=0x00006000010400a0) at thread.h:208:3 [opt]
    309    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    310  thread [#31](/bitcoin-bitcoin/31/), name = 'b-scriptch.10'
    311    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    312    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    313    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
    314    frame [#3](/bitcoin-bitcoin/3/): 0x0000000100375a34 bitcoin-node`CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::Loop(this=0x000000012800ca30, fMaster=<unavailable>) at checkqueue.h:108:26 [opt]
    315    frame [#4](/bitcoin-bitcoin/4/): 0x000000010037dc84 bitcoin-node`CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()::operator()(this=<unavailable>) const at checkqueue.h:152:17 [opt]
    316    frame [#5](/bitcoin-bitcoin/5/): 0x000000010037db28 bitcoin-node`decltype(std::declval<CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>()()) std::__1::__invoke[abi:ne200100]<CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>(__f=<unavailable>) at invoke.h:179:25 [opt] [inlined]
    317    frame [#6](/bitcoin-bitcoin/6/): 0x000000010037db24 bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>(__t=size=2, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    318    frame [#7](/bitcoin-bitcoin/7/): 0x000000010037db20 bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, CCheckQueue<CScriptCheck, std::__1::pair<ScriptError_t, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>::CCheckQueue(unsigned int, int)::'lambda'()>>(__vp=0x00006000010400c0) at thread.h:208:3 [opt]
    319    frame [#8](/bitcoin-bitcoin/8/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    320  thread [#32](/bitcoin-bitcoin/32/), name = 'b-mapport'
    321    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    322    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    323    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18300 libc++.1.dylib`std::__1::condition_variable::__do_timed_wait(std::__1::unique_lock<std::__1::mutex>&, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l>>>) + 104
    324    frame [#3](/bitcoin-bitcoin/3/): 0x000000010074cb3c bitcoin-node`std::__1::cv_status std::__1::condition_variable::wait_for<long long, std::__1::ratio<1l, 1000000000l>>(this=0x0000000100a387d8, __lk=0x0000000170f7acc8, __d=<unavailable>) at duration.h:0:33 [opt] [inlined]
    325    frame [#4](/bitcoin-bitcoin/4/): 0x000000010074cb30 bitcoin-node`void std::__1::condition_variable::__do_timed_wait[abi:ne200100]<std::__1::chrono::steady_clock>(this=0x0000000100a387d8, __lk=0x0000000170f7acc8, __tp=time_point<std::__1::chrono::steady_clock, std::__1::chrono::duration<long long, std::__1::ratio<1L, 1000000000L> > > @ x20) at condition_variable.h:235:3 [opt] [inlined]
    326    frame [#5](/bitcoin-bitcoin/5/): 0x000000010074cb30 bitcoin-node`std::__1::cv_status std::__1::condition_variable::wait_until<std::__1::chrono::steady_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l>>>(this=0x0000000100a387d8, __lk=0x0000000170f7acc8, __t=<unavailable>) at condition_variable.h:161:3 [opt] [inlined]
    327    frame [#6](/bitcoin-bitcoin/6/): 0x000000010074cb30 bitcoin-node`bool std::__1::condition_variable::wait_until<std::__1::chrono::steady_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l>>, CThreadInterrupt::sleep_for(std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l>>)::$_0>(this=0x0000000100a387d8, __lk=0x0000000170f7acc8, __t=<unavailable>, __pred=(unnamed class) @ x19) at condition_variable.h:169:9 [opt] [inlined]
    328    frame [#7](/bitcoin-bitcoin/7/): 0x000000010074cb30 bitcoin-node`bool std::__1::condition_variable::wait_for[abi:ne200100]<long long, std::__1::ratio<1l, 1000000000l>, CThreadInterrupt::sleep_for(std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l>>)::$_0>(this=0x0000000100a387d8, __lk=0x0000000170f7acc8, __d=<unavailable>, __pred=(unnamed class) @ x19) at condition_variable.h:205:10 [opt] [inlined]
    329    frame [#8](/bitcoin-bitcoin/8/): 0x000000010074cafc bitcoin-node`CThreadInterrupt::sleep_for(this=0x0000000100a387d8, rel_time=<unavailable>) at threadinterrupt.cpp:34:18 [opt]
    330    frame [#9](/bitcoin-bitcoin/9/): 0x000000010009110c bitcoin-node`ThreadMapPort() at mapport.cpp:126:34 [opt]
    331    frame [#10](/bitcoin-bitcoin/10/): 0x000000010074c844 bitcoin-node`std::__1::__function::__value_func<void ()>::operator()[abi:ne200100](this=0x0000000170f7af78) const at function.h:436:12 [opt] [inlined]
    332    frame [#11](/bitcoin-bitcoin/11/): 0x000000010074c830 bitcoin-node`std::__1::function<void ()>::operator()(this= Function = ThreadMapPort() ) const at function.h:995:10 [opt] [inlined]
    333    frame [#12](/bitcoin-bitcoin/12/): 0x000000010074c830 bitcoin-node`util::TraceThread(thread_name="mapport", thread_func= Function = ThreadMapPort() ) at thread.cpp:21:9 [opt]
    334    frame [#13](/bitcoin-bitcoin/13/): 0x00000001000920f0 bitcoin-node`decltype(std::declval<void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>)>()(std::declval<char const*>(), std::declval<void (*)()>())) std::__1::__invoke[abi:ne200100]<void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>), char const*, void (*)()>(__f=0x00006000010885e8, __args=0x00006000010885f0, __args=0x00006000010885f8) at invoke.h:179:25 [opt] [inlined]
    335    frame [#14](/bitcoin-bitcoin/14/): 0x00000001000920ac bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>), char const*, void (*)(), 2ul, 3ul>(__t=size=4, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    336    frame [#15](/bitcoin-bitcoin/15/): 0x00000001000920ac bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>), char const*, void (*)()>>(__vp=0x00006000010885e0) at thread.h:208:3 [opt]
    337    frame [#16](/bitcoin-bitcoin/16/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    338  thread [#33](/bitcoin-bitcoin/33/), name = 'b-torcontrol'
    339    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfabd04 libsystem_kernel.dylib`kevent + 8
    340    frame [#1](/bitcoin-bitcoin/1/): 0x0000000101093a90 libevent_core-2.1.7.dylib`kq_dispatch + 492
    341    frame [#2](/bitcoin-bitcoin/2/): 0x000000010108a0b8 libevent_core-2.1.7.dylib`event_base_loop + 596
    342    frame [#3](/bitcoin-bitcoin/3/): 0x000000010031dd68 bitcoin-node`TorControlThread(onion_service_target=CService @ 0x0000000171006ce8) at torcontrol.cpp:684:5 [opt] [inlined]
    343    frame [#4](/bitcoin-bitcoin/4/): 0x000000010031dcf0 bitcoin-node`StartTorControl(CService)::$_0::operator()(this=<unavailable>) const at torcontrol.cpp:702:9 [opt] [inlined]
    344    frame [#5](/bitcoin-bitcoin/5/): 0x000000010031dbc8 bitcoin-node`decltype(std::declval<StartTorControl(CService)::$_0&>()()) std::__1::__invoke[abi:ne200100]<StartTorControl(CService)::$_0&>(__f=<unavailable>) at invoke.h:179:25 [opt] [inlined]
    345    frame [#6](/bitcoin-bitcoin/6/): 0x000000010031dbc8 bitcoin-node`void std::__1::__invoke_void_return_wrapper<void, true>::__call[abi:ne200100]<StartTorControl(CService)::$_0&>(__args=<unavailable>) at invoke.h:251:5 [opt] [inlined]
    346    frame [#7](/bitcoin-bitcoin/7/): 0x000000010031dbc8 bitcoin-node`void std::__1::__invoke_r[abi:ne200100]<void, StartTorControl(CService)::$_0&>(__args=<unavailable>) at invoke.h:273:10 [opt] [inlined]
    347    frame [#10](/bitcoin-bitcoin/10/): 0x000000010074c844 bitcoin-node`std::__1::__function::__value_func<void ()>::operator()[abi:ne200100](this=0x0000000171006f48) const at function.h:436:12 [opt] [inlined]
    348    frame [#11](/bitcoin-bitcoin/11/): 0x000000010074c830 bitcoin-node`std::__1::function<void ()>::operator()(this=0x0000000171006f48) const at function.h:995:10 [opt] [inlined]
    349    frame [#12](/bitcoin-bitcoin/12/): 0x000000010074c830 bitcoin-node`util::TraceThread(thread_name="torcontrol", thread_func=function<void ()> @ 0x0000000171006f48) at thread.cpp:21:9 [opt]
    350    frame [#13](/bitcoin-bitcoin/13/): 0x000000010031d4c4 bitcoin-node`decltype(std::declval<void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>)>()(std::declval<char const*>(), std::declval<StartTorControl(CService)::$_0>())) std::__1::__invoke[abi:ne200100]<void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>), char const*, StartTorControl(CService)::$_0>(__f=0x0000600000ac9e08, __args=0x0000600000ac9e10, __args=0x0000600000ac9e18) at invoke.h:179:25 [opt] [inlined]
    351    frame [#14](/bitcoin-bitcoin/14/): 0x000000010031d464 bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>), char const*, StartTorControl(CService)::$_0, 2ul, 3ul>(__t=size=4, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    352    frame [#15](/bitcoin-bitcoin/15/): 0x000000010031d464 bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>), char const*, StartTorControl(CService)::$_0>>(__vp=0x0000600000ac9e00) at thread.h:208:3 [opt]
    353    frame [#16](/bitcoin-bitcoin/16/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    354  thread [#34](/bitcoin-bitcoin/34/), name = 'b-net'
    355    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfb0c2c libsystem_kernel.dylib`__select + 8
    356    frame [#1](/bitcoin-bitcoin/1/): 0x000000010073b304 bitcoin-node`Sock::WaitMany(this=<unavailable>, timeout=50 ms, events_per_sock=size=13) const at sock.cpp:223:9 [opt]
    357    frame [#2](/bitcoin-bitcoin/2/): 0x000000010009f4e4 bitcoin-node`CConnman::SocketHandler(this=0x0000000128009400) at net.cpp:2105:73 [opt]
    358    frame [#3](/bitcoin-bitcoin/3/): 0x00000001000a0080 bitcoin-node`CConnman::ThreadSocketHandler(this=0x0000000128009400) at net.cpp:2237:9 [opt]
    359    frame [#4](/bitcoin-bitcoin/4/): 0x000000010074c844 bitcoin-node`std::__1::__function::__value_func<void ()>::operator()[abi:ne200100](this=0x0000000171092f78) const at function.h:436:12 [opt] [inlined]
    360    frame [#5](/bitcoin-bitcoin/5/): 0x000000010074c830 bitcoin-node`std::__1::function<void ()>::operator()(this=0x0000000171092f78) const at function.h:995:10 [opt] [inlined]
    361    frame [#6](/bitcoin-bitcoin/6/): 0x000000010074c830 bitcoin-node`util::TraceThread(thread_name="net", thread_func=function<void ()> @ 0x0000000171092f78) at thread.cpp:21:9 [opt]
    362    frame [#7](/bitcoin-bitcoin/7/): 0x00000001000b8b88 bitcoin-node`decltype(std::declval<void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>)>()(std::declval<char const*>(), std::declval<CConnman::Start(CScheduler&, CConnman::Options const&)::$_2>())) std::__1::__invoke[abi:ne200100]<void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>), char const*, CConnman::Start(CScheduler&, CConnman::Options const&)::$_2>(__f=0x0000600001044068, __args=0x0000600001044070, __args=0x0000600001044078) at invoke.h:179:25 [opt] [inlined]
    363    frame [#8](/bitcoin-bitcoin/8/): 0x00000001000b8b54 bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>), char const*, CConnman::Start(CScheduler&, CConnman::Options const&)::$_2, 2ul, 3ul>(__t=size=4, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    364    frame [#9](/bitcoin-bitcoin/9/): 0x00000001000b8b54 bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>), char const*, CConnman::Start(CScheduler&, CConnman::Options const&)::$_2>>(__vp=0x0000600001044060) at thread.h:208:3 [opt]
    365    frame [#10](/bitcoin-bitcoin/10/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    366  thread [#35](/bitcoin-bitcoin/35/), name = 'b-addcon'
    367    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    368    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    369    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18300 libc++.1.dylib`std::__1::condition_variable::__do_timed_wait(std::__1::unique_lock<std::__1::mutex>&, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l>>>) + 104
    370    frame [#3](/bitcoin-bitcoin/3/): 0x000000010074cb3c bitcoin-node`std::__1::cv_status std::__1::condition_variable::wait_for<long long, std::__1::ratio<1l, 1000000000l>>(this=0x0000000128009748, __lk=0x00000001711aad88, __d=<unavailable>) at duration.h:0:33 [opt] [inlined]
    371    frame [#4](/bitcoin-bitcoin/4/): 0x000000010074cb30 bitcoin-node`void std::__1::condition_variable::__do_timed_wait[abi:ne200100]<std::__1::chrono::steady_clock>(this=0x0000000128009748, __lk=0x00000001711aad88, __tp=time_point<std::__1::chrono::steady_clock, std::__1::chrono::duration<long long, std::__1::ratio<1L, 1000000000L> > > @ x20) at condition_variable.h:235:3 [opt] [inlined]
    372    frame [#5](/bitcoin-bitcoin/5/): 0x000000010074cb30 bitcoin-node`std::__1::cv_status std::__1::condition_variable::wait_until<std::__1::chrono::steady_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l>>>(this=0x0000000128009748, __lk=0x00000001711aad88, __t=<unavailable>) at condition_variable.h:161:3 [opt] [inlined]
    373    frame [#6](/bitcoin-bitcoin/6/): 0x000000010074cb30 bitcoin-node`bool std::__1::condition_variable::wait_until<std::__1::chrono::steady_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l>>, CThreadInterrupt::sleep_for(std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l>>)::$_0>(this=0x0000000128009748, __lk=0x00000001711aad88, __t=<unavailable>, __pred=(unnamed class) @ x19) at condition_variable.h:169:9 [opt] [inlined]
    374    frame [#7](/bitcoin-bitcoin/7/): 0x000000010074cb30 bitcoin-node`bool std::__1::condition_variable::wait_for[abi:ne200100]<long long, std::__1::ratio<1l, 1000000000l>, CThreadInterrupt::sleep_for(std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l>>)::$_0>(this=0x0000000128009748, __lk=0x00000001711aad88, __d=<unavailable>, __pred=(unnamed class) @ x19) at condition_variable.h:205:10 [opt] [inlined]
    375    frame [#8](/bitcoin-bitcoin/8/): 0x000000010074cafc bitcoin-node`CThreadInterrupt::sleep_for(this=0x0000000128009748, rel_time=<unavailable>) at threadinterrupt.cpp:34:18 [opt]
    376    frame [#9](/bitcoin-bitcoin/9/): 0x00000001000a5cc0 bitcoin-node`CConnman::ThreadOpenAddedConnections(this=0x0000000128009400) at net.cpp:2984:27 [opt]
    377    frame [#10](/bitcoin-bitcoin/10/): 0x000000010074c844 bitcoin-node`std::__1::__function::__value_func<void ()>::operator()[abi:ne200100](this=0x00000001711aaf78) const at function.h:436:12 [opt] [inlined]
    378    frame [#11](/bitcoin-bitcoin/11/): 0x000000010074c830 bitcoin-node`std::__1::function<void ()>::operator()(this=0x00000001711aaf78) const at function.h:995:10 [opt] [inlined]
    379    frame [#12](/bitcoin-bitcoin/12/): 0x000000010074c830 bitcoin-node`util::TraceThread(thread_name="addcon", thread_func=function<void ()> @ 0x00000001711aaf78) at thread.cpp:21:9 [opt]
    380    frame [#13](/bitcoin-bitcoin/13/): 0x00000001000b9548 bitcoin-node`decltype(std::declval<void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>)>()(std::declval<char const*>(), std::declval<CConnman::Start(CScheduler&, CConnman::Options const&)::$_4>())) std::__1::__invoke[abi:ne200100]<void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>), char const*, CConnman::Start(CScheduler&, CConnman::Options const&)::$_4>(__f=0x00006000010440a8, __args=0x00006000010440b0, __args=0x00006000010440b8) at invoke.h:179:25 [opt] [inlined]
    381    frame [#14](/bitcoin-bitcoin/14/): 0x00000001000b9514 bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>), char const*, CConnman::Start(CScheduler&, CConnman::Options const&)::$_4, 2ul, 3ul>(__t=size=4, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    382    frame [#15](/bitcoin-bitcoin/15/): 0x00000001000b9514 bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>), char const*, CConnman::Start(CScheduler&, CConnman::Options const&)::$_4>>(__vp=0x00006000010440a0) at thread.h:208:3 [opt]
    383    frame [#16](/bitcoin-bitcoin/16/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    384  thread [#36](/bitcoin-bitcoin/36/), name = 'b-opencon'
    385    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    386    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    387    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18300 libc++.1.dylib`std::__1::condition_variable::__do_timed_wait(std::__1::unique_lock<std::__1::mutex>&, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l>>>) + 104
    388    frame [#3](/bitcoin-bitcoin/3/): 0x000000010074cb3c bitcoin-node`std::__1::cv_status std::__1::condition_variable::wait_for<long long, std::__1::ratio<1l, 1000000000l>>(this=0x0000000128009748, __lk=0x00000001712369d8, __d=<unavailable>) at duration.h:0:33 [opt] [inlined]
    389    frame [#4](/bitcoin-bitcoin/4/): 0x000000010074cb30 bitcoin-node`void std::__1::condition_variable::__do_timed_wait[abi:ne200100]<std::__1::chrono::steady_clock>(this=0x0000000128009748, __lk=0x00000001712369d8, __tp=time_point<std::__1::chrono::steady_clock, std::__1::chrono::duration<long long, std::__1::ratio<1L, 1000000000L> > > @ x20) at condition_variable.h:235:3 [opt] [inlined]
    390    frame [#5](/bitcoin-bitcoin/5/): 0x000000010074cb30 bitcoin-node`std::__1::cv_status std::__1::condition_variable::wait_until<std::__1::chrono::steady_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l>>>(this=0x0000000128009748, __lk=0x00000001712369d8, __t=<unavailable>) at condition_variable.h:161:3 [opt] [inlined]
    391    frame [#6](/bitcoin-bitcoin/6/): 0x000000010074cb30 bitcoin-node`bool std::__1::condition_variable::wait_until<std::__1::chrono::steady_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l>>, CThreadInterrupt::sleep_for(std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l>>)::$_0>(this=0x0000000128009748, __lk=0x00000001712369d8, __t=<unavailable>, __pred=(unnamed class) @ x19) at condition_variable.h:169:9 [opt] [inlined]
    392    frame [#7](/bitcoin-bitcoin/7/): 0x000000010074cb30 bitcoin-node`bool std::__1::condition_variable::wait_for[abi:ne200100]<long long, std::__1::ratio<1l, 1000000000l>, CThreadInterrupt::sleep_for(std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l>>)::$_0>(this=0x0000000128009748, __lk=0x00000001712369d8, __d=<unavailable>, __pred=(unnamed class) @ x19) at condition_variable.h:205:10 [opt] [inlined]
    393    frame [#8](/bitcoin-bitcoin/8/): 0x000000010074cafc bitcoin-node`CThreadInterrupt::sleep_for(this=0x0000000128009748, rel_time=<unavailable>) at threadinterrupt.cpp:34:18 [opt]
    394    frame [#9](/bitcoin-bitcoin/9/): 0x00000001000a22d8 bitcoin-node`CConnman::ThreadOpenConnections(this=0x0000000128009400, connect=<unavailable>, seed_nodes=size=0) at net.cpp:2583:27 [opt]
    395    frame [#10](/bitcoin-bitcoin/10/): 0x00000001000ba1b8 bitcoin-node`CConnman::Start(CScheduler&, CConnman::Options const&)::$_5::operator()(this=0x0000600000ac9f08) const at net.cpp:3382:102 [opt] [inlined]
    396    frame [#11](/bitcoin-bitcoin/11/): 0x00000001000ba170 bitcoin-node`decltype(std::declval<CConnman::Start(CScheduler&, CConnman::Options const&)::$_5&>()()) std::__1::__invoke[abi:ne200100]<CConnman::Start(CScheduler&, CConnman::Options const&)::$_5&>(__f=0x0000600000ac9f08) at invoke.h:179:25 [opt] [inlined]
    397    frame [#12](/bitcoin-bitcoin/12/): 0x00000001000ba170 bitcoin-node`void std::__1::__invoke_void_return_wrapper<void, true>::__call[abi:ne200100]<CConnman::Start(CScheduler&, CConnman::Options const&)::$_5&>(__args=0x0000600000ac9f08) at invoke.h:251:5 [opt] [inlined]
    398    frame [#13](/bitcoin-bitcoin/13/): 0x00000001000ba170 bitcoin-node`void std::__1::__invoke_r[abi:ne200100]<void, CConnman::Start(CScheduler&, CConnman::Options const&)::$_5&>(__args=0x0000600000ac9f08) at invoke.h:273:10 [opt] [inlined]
    399    frame [#16](/bitcoin-bitcoin/16/): 0x000000010074c844 bitcoin-node`std::__1::__function::__value_func<void ()>::operator()[abi:ne200100](this=0x0000000171236f48) const at function.h:436:12 [opt] [inlined]
    400    frame [#17](/bitcoin-bitcoin/17/): 0x000000010074c830 bitcoin-node`std::__1::function<void ()>::operator()(this=0x0000000171236f48) const at function.h:995:10 [opt] [inlined]
    401    frame [#18](/bitcoin-bitcoin/18/): 0x000000010074c830 bitcoin-node`util::TraceThread(thread_name="opencon", thread_func=function<void ()> @ 0x0000000171236f48) at thread.cpp:21:9 [opt]
    402    frame [#19](/bitcoin-bitcoin/19/): 0x00000001000b9a94 bitcoin-node`decltype(std::declval<void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>)>()(std::declval<char const*>(), std::declval<CConnman::Start(CScheduler&, CConnman::Options const&)::$_5>())) std::__1::__invoke[abi:ne200100]<void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>), char const*, CConnman::Start(CScheduler&, CConnman::Options const&)::$_5>(__f=0x000060000335c148, __args=0x000060000335c150, __args=0x000060000335c158) at invoke.h:179:25 [opt] [inlined]
    403    frame [#20](/bitcoin-bitcoin/20/): 0x00000001000b9a04 bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>), char const*, CConnman::Start(CScheduler&, CConnman::Options const&)::$_5, 2ul, 3ul>(__t=size=4, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    404    frame [#21](/bitcoin-bitcoin/21/): 0x00000001000b9a04 bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>), char const*, CConnman::Start(CScheduler&, CConnman::Options const&)::$_5>>(__vp=<unavailable>) at thread.h:208:3 [opt]
    405    frame [#22](/bitcoin-bitcoin/22/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    406  thread [#37](/bitcoin-bitcoin/37/), name = 'b-msghand'
    407    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    408    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    409    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18300 libc++.1.dylib`std::__1::condition_variable::__do_timed_wait(std::__1::unique_lock<std::__1::mutex>&, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l>>>) + 104
    410    frame [#3](/bitcoin-bitcoin/3/): 0x00000001000a6028 bitcoin-node`std::__1::cv_status std::__1::condition_variable::wait_for<long long, std::__1::ratio<1l, 1000000000l>>(this=<unavailable>, __lk=0x00000001712c2e80, __d=<unavailable>) at duration.h:0:33 [opt] [inlined]
    411    frame [#4](/bitcoin-bitcoin/4/): 0x00000001000a601c bitcoin-node`void std::__1::condition_variable::__do_timed_wait[abi:ne200100]<std::__1::chrono::steady_clock>(this=<unavailable>, __lk=0x00000001712c2e80, __tp=time_point<std::__1::chrono::steady_clock, std::__1::chrono::duration<long long, std::__1::ratio<1L, 1000000000L> > > @ x22) at condition_variable.h:235:3 [opt] [inlined]
    412    frame [#5](/bitcoin-bitcoin/5/): 0x00000001000a601c bitcoin-node`std::__1::cv_status std::__1::condition_variable::wait_until<std::__1::chrono::steady_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l>>>(this=<unavailable>, __lk=0x00000001712c2e80, __t=<unavailable>) at condition_variable.h:161:3 [opt] [inlined]
    413    frame [#6](/bitcoin-bitcoin/6/): 0x00000001000a601c bitcoin-node`bool std::__1::condition_variable::wait_until<std::__1::chrono::steady_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l>>, CConnman::ThreadMessageHandler()::$_0>(this=<unavailable>, __lk=0x00000001712c2e80, __t=<unavailable>, __pred=(unnamed class) @ x19) at condition_variable.h:169:9 [opt] [inlined]
    414    frame [#7](/bitcoin-bitcoin/7/): 0x00000001000a601c bitcoin-node`CConnman::ThreadMessageHandler(this=0x0000000128009400) at net.cpp:3070:25 [opt]
    415    frame [#8](/bitcoin-bitcoin/8/): 0x000000010074c844 bitcoin-node`std::__1::__function::__value_func<void ()>::operator()[abi:ne200100](this=0x00000001712c2f78) const at function.h:436:12 [opt] [inlined]
    416    frame [#9](/bitcoin-bitcoin/9/): 0x000000010074c830 bitcoin-node`std::__1::function<void ()>::operator()(this=0x00000001712c2f78) const at function.h:995:10 [opt] [inlined]
    417    frame [#10](/bitcoin-bitcoin/10/): 0x000000010074c830 bitcoin-node`util::TraceThread(thread_name="msghand", thread_func=function<void ()> @ 0x00000001712c2f78) at thread.cpp:21:9 [opt]
    418    frame [#11](/bitcoin-bitcoin/11/): 0x00000001000ba4e4 bitcoin-node`decltype(std::declval<void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>)>()(std::declval<char const*>(), std::declval<CConnman::Start(CScheduler&, CConnman::Options const&)::$_6>())) std::__1::__invoke[abi:ne200100]<void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>), char const*, CConnman::Start(CScheduler&, CConnman::Options const&)::$_6>(__f=0x00006000010440c8, __args=0x00006000010440d0, __args=0x00006000010440d8) at invoke.h:179:25 [opt] [inlined]
    419    frame [#12](/bitcoin-bitcoin/12/): 0x00000001000ba4b0 bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>), char const*, CConnman::Start(CScheduler&, CConnman::Options const&)::$_6, 2ul, 3ul>(__t=size=4, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    420    frame [#13](/bitcoin-bitcoin/13/): 0x00000001000ba4b0 bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(std::__1::basic_string_view<char, std::__1::char_traits<char>>, std::__1::function<void ()>), char const*, CConnman::Start(CScheduler&, CConnman::Options const&)::$_6>>(__vp=0x00006000010440c0) at thread.h:208:3 [opt]
    421    frame [#14](/bitcoin-bitcoin/14/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    422  thread [#40](/bitcoin-bitcoin/40/)
    423    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    424    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    425    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18268 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 32
    426    frame [#3](/bitcoin-bitcoin/3/): 0x00000001006250b8 bitcoin-node`mp::EventLoop::startAsyncThread()::$_0::operator()(this=0x000060000126c108) const at proxy.cpp:305:22 [opt] [inlined]
    427    frame [#4](/bitcoin-bitcoin/4/): 0x000000010062506c bitcoin-node`decltype(std::declval<mp::EventLoop::startAsyncThread()::$_0>()()) std::__1::__invoke[abi:ne200100]<mp::EventLoop::startAsyncThread()::$_0>(__f=0x000060000126c108) at invoke.h:179:25 [opt] [inlined]
    428    frame [#5](/bitcoin-bitcoin/5/): 0x000000010062506c bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, mp::EventLoop::startAsyncThread()::$_0>(__t=size=2, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    429    frame [#6](/bitcoin-bitcoin/6/): 0x000000010062506c bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, mp::EventLoop::startAsyncThread()::$_0>>(__vp=0x000060000126c100) at thread.h:208:3 [opt]
    430    frame [#7](/bitcoin-bitcoin/7/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    431  thread [#44](/bitcoin-bitcoin/44/)
    432    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfa93cc libsystem_kernel.dylib`__psynch_cvwait + 8
    433    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe80e0 libsystem_pthread.dylib`_pthread_cond_wait + 984
    434    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cf18300 libc++.1.dylib`std::__1::condition_variable::__do_timed_wait(std::__1::unique_lock<std::__1::mutex>&, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l>>>) + 104
    435    frame [#3](/bitcoin-bitcoin/3/): 0x0000000100174704 bitcoin-node`std::__1::cv_status std::__1::condition_variable::wait_for<long long, std::__1::ratio<1l, 1000000000l>>(this=0x0000600002548d10, __lk=0x0000000177742708, __d=<unavailable>) at condition_variable.h:0 [opt] [inlined]
    436    frame [#4](/bitcoin-bitcoin/4/): 0x00000001001746c8 bitcoin-node`void std::__1::condition_variable::__do_timed_wait[abi:ne200100]<NodeClock>(this=0x0000600002548d10, __lk=0x0000000177742708, __tp=<unavailable>) at condition_variable.h:235:3 [opt] [inlined]
    437    frame [#5](/bitcoin-bitcoin/5/): 0x00000001001746c8 bitcoin-node`std::__1::cv_status std::__1::condition_variable::wait_until<NodeClock, std::__1::chrono::duration<double, std::__1::ratio<1l, 1000000l>>>(this=0x0000600002548d10, __lk=0x0000000177742708, __t=0x00000001777426f8) at condition_variable.h:161:3 [opt]
    438    frame [#6](/bitcoin-bitcoin/6/): 0x000000010016e074 bitcoin-node`bool std::__1::condition_variable::wait_until<NodeClock, std::__1::chrono::duration<double, std::__1::ratio<1l, 1000000l>>, node::WaitAndCreateNewBlock(ChainstateManager&, node::KernelNotifications&, CTxMemPool*, std::__1::unique_ptr<node::CBlockTemplate, std::__1::default_delete<node::CBlockTemplate>> const&, node::BlockWaitOptions const&, node::BlockAssembler::Options const&)::$_0>(this=<unavailable>, __lk=0x0000000177742708, __t=0x00000001777426f8, __pred=<unavailable>) at condition_variable.h:169:9 [opt] [inlined]
    439    frame [#7](/bitcoin-bitcoin/7/): 0x000000010016e010 bitcoin-node`node::WaitAndCreateNewBlock(chainman=0x000000012800ca00, kernel_notifications=0x0000600002548cc0, mempool=0x0000000127715900, block_template=node::CBlockTemplate @ 0x000060002e8681a0, options=0x0000000177742878, assemble_options=0x0000600003e68008) at miner.cpp:479:49 [opt]
    440    frame [#8](/bitcoin-bitcoin/8/): 0x00000001001647f4 bitcoin-node`node::(anonymous namespace)::BlockTemplateImpl::waitNext(this=0x0000600003e68000, options=BlockWaitOptions @ 0x0000000177742878) at interfaces.cpp:921:29 [opt]
    441    frame [#9](/bitcoin-bitcoin/9/): 0x0000000100446ef8 bitcoin-node`decltype(auto) mp::ProxyMethodTraits<ipc::capnp::messages::BlockTemplate::WaitNextParams, void>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, node::BlockWaitOptions>(server_context=0x0000000177742b10, args=<unavailable>) at proxy.h:288:16 [opt] [inlined]
    442    frame [#10](/bitcoin-bitcoin/10/): 0x0000000100446edc bitcoin-node`decltype(auto) mp::ServerCall::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, node::BlockWaitOptions>(this=<unavailable>, server_context=0x0000000177742b10, (null)=<unavailable>, args=<unavailable>) const at proxy-types.h:448:16 [opt] [inlined]
    443    frame [#11](/bitcoin-bitcoin/11/): 0x0000000100446edc bitcoin-node`void mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, node::BlockWaitOptions>(this=0x0000600001e54b9c, server_context=0x0000000177742b10, (null)=<unavailable>, args=0x0000000177742a78) const at proxy-types.h:471:33 [opt]
    444    frame [#12](/bitcoin-bitcoin/12/): 0x0000000100446e20 bitcoin-node`void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>((null)=<unavailable>, (null)=<unavailable>, server_context=0x0000000177742b10, fn=0x0000600001e54b9c, args=0x0000000177742b98) at proxy-types.h:307:8 [opt]
    445    frame [#13](/bitcoin-bitcoin/13/): 0x0000000100446338 bitcoin-node`decltype(auto) mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, mp::TypeList<node::BlockWaitOptions>>(this=<unavailable>, server_context=0x0000000177742b10, (null)=<unavailable>) const at proxy-types.h:539:16 [opt] [inlined]
    446    frame [#14](/bitcoin-bitcoin/14/): 0x0000000100446330 bitcoin-node`std::__1::enable_if<std::is_same<decltype(mp::Accessor<mp::mining_fields::Context, 17>::get(fp1.call_context.getParams())), mp::Context::Reader>::value, kj::Promise<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>::CallContext>>::type mp::PassField<mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>, mp::TypeList<node::BlockWaitOptions>>(mp::Priority<1>, mp::TypeList<>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<node::BlockWaitOptions>&&)::'lambda'()::operator()(this=<unavailable>) at type-context.h:126:24 [opt]
    447    frame [#15](/bitcoin-bitcoin/15/): 0x000000010039d40c bitcoin-node`kj::Function<void ()>::operator()(this=0x0000000177742f30) at function.h:119:12 [opt] [inlined]
    448    frame [#16](/bitcoin-bitcoin/16/): 0x000000010039d3fc bitcoin-node`void mp::Unlock<mp::Lock, kj::Function<void ()>&>(lock=0x0000000177742f50, callback=0x0000000177742f30) at util.h:209:5 [opt]
    449    frame [#17](/bitcoin-bitcoin/17/): 0x00000001006261dc bitcoin-node`void mp::Waiter::wait<mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0::operator()() const::'lambda'()>(mp::Lock&, mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0::operator()() const::'lambda'())::'lambda'()::operator()(this=<unavailable>) const at proxy-io.h:352:17 [opt]
    450    frame [#18](/bitcoin-bitcoin/18/): 0x00000001006261b8 bitcoin-node`void std::__1::condition_variable::wait<void mp::Waiter::wait<mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0::operator()() const::'lambda'()>(mp::Lock&, mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0::operator()() const::'lambda'())::'lambda'()>(this=<unavailable>, __lk=0x0000000177742f50, __pred=<unavailable>) at condition_variable.h:146:11 [opt] [inlined]
    451    frame [#19](/bitcoin-bitcoin/19/): 0x00000001006261ac bitcoin-node`void mp::Waiter::wait<mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0::operator()() const::'lambda'()>(this=0x0000600002268120, lock=0x0000000177742f50, pred=<unavailable>) at proxy-io.h:343:14 [opt] [inlined]
    452    frame [#20](/bitcoin-bitcoin/20/): 0x0000000100626184 bitcoin-node`mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0::operator()(this=0x0000600001e54ba8) const at proxy.cpp:419:34 [opt] [inlined]
    453    frame [#21](/bitcoin-bitcoin/21/): 0x0000000100625c9c bitcoin-node`decltype(std::declval<mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0>()()) std::__1::__invoke[abi:ne200100]<mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0>(__f=0x0000600001e54ba8) at invoke.h:179:25 [opt] [inlined]
    454    frame [#22](/bitcoin-bitcoin/22/): 0x0000000100625c9c bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<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>(__t=size=2, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    455    frame [#23](/bitcoin-bitcoin/23/): 0x0000000100625c9c bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<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>>(__vp=0x0000600001e54ba0) at thread.h:208:3 [opt]
    456    frame [#24](/bitcoin-bitcoin/24/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    457* thread [#45](/bitcoin-bitcoin/45/), stop reason = hit program assert
    458    frame [#0](/bitcoin-bitcoin/0/): 0x000000018cfae388 libsystem_kernel.dylib`__pthread_kill + 8
    459    frame [#1](/bitcoin-bitcoin/1/): 0x000000018cfe788c libsystem_pthread.dylib`pthread_kill + 296
    460    frame [#2](/bitcoin-bitcoin/2/): 0x000000018cef0a3c libsystem_c.dylib`abort + 124
    461    frame [#3](/bitcoin-bitcoin/3/): 0x000000018ceefc70 libsystem_c.dylib`__assert_rtn + 284
    462  * frame [#4](/bitcoin-bitcoin/4/): 0x0000000100620940 bitcoin-node`mp::EventLoopRef::operator*(this=<unavailable>) const at proxy.h:59:36 [opt] [inlined]
    463    frame [#5](/bitcoin-bitcoin/5/): 0x0000000100620920 bitcoin-node`mp::ProxyContext::ProxyContext(this=<unavailable>, connection=<unavailable>) at proxy.cpp:81:83 [opt] [inlined]
    464    frame [#6](/bitcoin-bitcoin/6/): 0x0000000100620920 bitcoin-node`mp::ProxyContext::ProxyContext(this=<unavailable>, connection=<unavailable>) at proxy.cpp:81:104 [opt]
    465    frame [#7](/bitcoin-bitcoin/7/): 0x0000000100418988 bitcoin-node`mp::ProxyServerBase<ipc::capnp::messages::BlockTemplate, interfaces::BlockTemplate>::ProxyServerBase(this=0x0000600003468120, vtt=0x0000000100a28ad8, impl=nullptr, connection=0x000000012680b610) at proxy-io.h:521:32 [opt] [inlined]
    466    frame [#8](/bitcoin-bitcoin/8/): 0x0000000100418950 bitcoin-node`mp::ProxyServerCustom<ipc::capnp::messages::BlockTemplate, interfaces::BlockTemplate>::ProxyServerCustom(this=0x0000600003468120, vtt=<unavailable>, (null)=nullptr, (null)=0x000000012680b610) at proxy.h:197:45 [opt] [inlined]
    467    frame [#9](/bitcoin-bitcoin/9/): 0x0000000100418950 bitcoin-node`mp::ProxyServer<ipc::capnp::messages::BlockTemplate>::ProxyServer(this=0x0000600003468120, (null)=nullptr, (null)=0x000000012680b610) at mining.capnp.proxy.h:393:30 [opt] [inlined]
    468    frame [#10](/bitcoin-bitcoin/10/): 0x000000010041892c bitcoin-node`kj::Own<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, std::nullptr_t> kj::heap<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, std::__1::shared_ptr<interfaces::BlockTemplate>, mp::Connection&>(params=nullptr, params=<unavailable>) at memory.h:609:21 [opt]
    469    frame [#11](/bitcoin-bitcoin/11/): 0x000000010044715c bitcoin-node`kj::Own<ipc::capnp::messages::BlockTemplate::Server, std::nullptr_t> mp::MakeProxyServer<ipc::capnp::messages::BlockTemplate, interfaces::BlockTemplate>(context=0x00000001776b6b10, impl=nullptr) at type-interface.h:14:12 [opt] [inlined]
    470    frame [#12](/bitcoin-bitcoin/12/): 0x000000010044714c bitcoin-node`kj::Own<ipc::capnp::messages::BlockTemplate::Server, std::nullptr_t> mp::CustomMakeProxyServer<ipc::capnp::messages::BlockTemplate, interfaces::BlockTemplate>(context=0x00000001776b6b10, impl=nullptr) at type-interface.h:20:12 [opt] [inlined]
    471    frame [#13](/bitcoin-bitcoin/13/): 0x0000000100447144 bitcoin-node`_ZN2mp16CustomBuildFieldIN10interfaces13BlockTemplateENSt3__110unique_ptrIS2_NS3_14default_deleteIS2_EEEERNS_11StructFieldINS_8AccessorINS_13mining_fields6ResultELi18EEEN3ipc5capnp8messages13BlockTemplate15WaitNextResults7BuilderEEEEEvNS_8TypeListIJNS4_IT_NS5_ISM_EEEEEEENS_8PriorityILi1EEERNS_13InvokeContextEOT0_OT1_PNu7__decayIDTcldtfL0p3_3getEEE5CallsE((null)=<unavailable>, (null)=<unavailable>, invoke_context=0x00000001776b6b10, value=nullptr, output=0x00000001776b6980, enable=0x0000000000000000) at type-interface.h:33:20 [opt]
    472    frame [#14](/bitcoin-bitcoin/14/): 0x0000000100446f58 bitcoin-node`void mp::BuildField<std::__1::unique_ptr<interfaces::BlockTemplate, std::__1::default_delete<interfaces::BlockTemplate>>, mp::InvokeContext, std::__1::unique_ptr<interfaces::BlockTemplate, std::__1::default_delete<interfaces::BlockTemplate>>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::WaitNextResults::Builder>&>((null)=<unavailable>, context=0x00000001776b6b10, output=0x00000001776b6980, values=nullptr) at proxy-types.h:203:9 [opt] [inlined]
    473    frame [#15](/bitcoin-bitcoin/15/): 0x0000000100446f44 bitcoin-node`void mp::CustomBuildField<std::__1::unique_ptr<interfaces::BlockTemplate, std::__1::default_delete<interfaces::BlockTemplate>>, std::__1::unique_ptr<interfaces::BlockTemplate, std::__1::default_delete<interfaces::BlockTemplate>>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::WaitNextResults::Builder>>((null)=<unavailable>, (null)=<unavailable>, invoke_context=0x00000001776b6b10, value=nullptr, output=0x00000001776b6980) at type-decay.h:34:5 [opt] [inlined]
    474    frame [#16](/bitcoin-bitcoin/16/): 0x0000000100446f44 bitcoin-node`void mp::BuildField<std::__1::unique_ptr<interfaces::BlockTemplate, std::__1::default_delete<interfaces::BlockTemplate>>&&, mp::InvokeContext, std::__1::unique_ptr<interfaces::BlockTemplate, std::__1::default_delete<interfaces::BlockTemplate>>, mp::StructField<mp::Accessor<mp::mining_fields::Result, 18>, ipc::capnp::messages::BlockTemplate::WaitNextResults::Builder>>((null)=<unavailable>, context=0x00000001776b6b10, output=0x00000001776b6980, values=nullptr) at proxy-types.h:203:9 [opt] [inlined]
    475    frame [#17](/bitcoin-bitcoin/17/): 0x0000000100446f44 bitcoin-node`void mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, node::BlockWaitOptions>(this=0x0000600001e5059c, server_context=0x00000001776b6b10, (null)=<unavailable>, args=0x00000001776b6a78) const at proxy-types.h:474:9 [opt]
    476    frame [#18](/bitcoin-bitcoin/18/): 0x0000000100446e20 bitcoin-node`void mp::PassField<mp::Accessor<mp::mining_fields::Options, 17>, node::BlockWaitOptions, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall> const&, mp::TypeList<>>((null)=<unavailable>, (null)=<unavailable>, server_context=0x00000001776b6b10, fn=0x0000600001e5059c, args=0x00000001776b6b98) at proxy-types.h:307:8 [opt]
    477    frame [#19](/bitcoin-bitcoin/19/): 0x0000000100446338 bitcoin-node`decltype(auto) mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>::invoke<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, mp::TypeList<node::BlockWaitOptions>>(this=<unavailable>, server_context=0x00000001776b6b10, (null)=<unavailable>) const at proxy-types.h:539:16 [opt] [inlined]
    478    frame [#20](/bitcoin-bitcoin/20/): 0x0000000100446330 bitcoin-node`std::__1::enable_if<std::is_same<decltype(mp::Accessor<mp::mining_fields::Context, 17>::get(fp1.call_context.getParams())), mp::Context::Reader>::value, kj::Promise<mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>::CallContext>>::type mp::PassField<mp::Accessor<mp::mining_fields::Context, 17>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>>, mp::TypeList<node::BlockWaitOptions>>(mp::Priority<1>, mp::TypeList<>, mp::ServerInvokeContext<mp::ProxyServer<ipc::capnp::messages::BlockTemplate>, capnp::CallContext<ipc::capnp::messages::BlockTemplate::WaitNextParams, ipc::capnp::messages::BlockTemplate::WaitNextResults>>&, mp::ServerField<1, mp::Accessor<mp::mining_fields::Options, 17>, mp::ServerRet<mp::Accessor<mp::mining_fields::Result, 18>, mp::ServerCall>> const&, mp::TypeList<node::BlockWaitOptions>&&)::'lambda'()::operator()(this=<unavailable>) at type-context.h:126:24 [opt]
    479    frame [#21](/bitcoin-bitcoin/21/): 0x000000010039d40c bitcoin-node`kj::Function<void ()>::operator()(this=0x00000001776b6f30) at function.h:119:12 [opt] [inlined]
    480    frame [#22](/bitcoin-bitcoin/22/): 0x000000010039d3fc bitcoin-node`void mp::Unlock<mp::Lock, kj::Function<void ()>&>(lock=0x00000001776b6f50, callback=0x00000001776b6f30) at util.h:209:5 [opt]
    481    frame [#23](/bitcoin-bitcoin/23/): 0x00000001006261dc bitcoin-node`void mp::Waiter::wait<mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0::operator()() const::'lambda'()>(mp::Lock&, mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0::operator()() const::'lambda'())::'lambda'()::operator()(this=<unavailable>) const at proxy-io.h:352:17 [opt]
    482    frame [#24](/bitcoin-bitcoin/24/): 0x00000001006261b8 bitcoin-node`void std::__1::condition_variable::wait<void mp::Waiter::wait<mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0::operator()() const::'lambda'()>(mp::Lock&, mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0::operator()() const::'lambda'())::'lambda'()>(this=<unavailable>, __lk=0x00000001776b6f50, __pred=<unavailable>) at condition_variable.h:146:11 [opt] [inlined]
    483    frame [#25](/bitcoin-bitcoin/25/): 0x00000001006261ac bitcoin-node`void mp::Waiter::wait<mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0::operator()() const::'lambda'()>(this=0x0000600002250000, lock=0x00000001776b6f50, pred=<unavailable>) at proxy-io.h:343:14 [opt] [inlined]
    484    frame [#26](/bitcoin-bitcoin/26/): 0x0000000100626184 bitcoin-node`mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0::operator()(this=0x0000600001e54e78) const at proxy.cpp:419:34 [opt] [inlined]
    485    frame [#27](/bitcoin-bitcoin/27/): 0x0000000100625c9c bitcoin-node`decltype(std::declval<mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0>()()) std::__1::__invoke[abi:ne200100]<mp::ProxyServer<mp::ThreadMap>::makeThread(capnp::CallContext<mp::ThreadMap::MakeThreadParams, mp::ThreadMap::MakeThreadResults>)::$_0>(__f=0x0000600001e54e78) at invoke.h:179:25 [opt] [inlined]
    486    frame [#28](/bitcoin-bitcoin/28/): 0x0000000100625c9c bitcoin-node`void std::__1::__thread_execute[abi:ne200100]<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>(__t=size=2, (null)=<unavailable>) at thread.h:199:3 [opt] [inlined]
    487    frame [#29](/bitcoin-bitcoin/29/): 0x0000000100625c9c bitcoin-node`void* std::__1::__thread_proxy[abi:ne200100]<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>>(__vp=0x0000600001e54e70) at thread.h:208:3 [opt]
    488    frame [#30](/bitcoin-bitcoin/30/): 0x000000018cfe7c0c libsystem_pthread.dylib`_pthread_start + 136
    
  8. ryanofsky commented at 8:56 pm on October 7, 2025: contributor

    But if I kill my rust code, it still causes a crash on bitcoin-node… I wonder if I’m still doing something wrong on shutdown?

    This seems like a new crash I haven’t seen before. Probably there is something the rust code could be doing differently to prevent the crash, but that wouldn’t mean it is doing anything wrong, since the node should be able to avoid crashing on unclean shutdowns. Will look into this more and try to suggest changes and fix.

  9. plebhash commented at 9:03 pm on October 7, 2025: none

    to be fair, the shutdown strategy on the rust code doesn’t really do anything to try to be “clean”

    when ctrl+c is hit, we simply break the loops of every spawned task and drop everything from memory (including records to whatever waitNext request that was still waiting for completion)

  10. plebhash commented at 9:08 pm on October 7, 2025: none

    also worth mentioning that the steps listed above are not able to reproduce it deterministically

    sometimes it happens, sometimes it doesn’t happen

    probably related to the order in which things are dropped from memory, which I assume capnp and capnp-rpc crates take as triggers for IPC signals for resource cleanup on the server side

  11. ryanofsky commented at 0:41 am on October 8, 2025: contributor

    Thanks @plebhash. The stack trace from #33554 (comment) shows the problem pretty clearly, and I created an issue to track it: https://github.com/bitcoin-core/libmultiprocess/issues/226.

    It looks to me like there’s not way great way for the rust client to avoid this problem, and this is something bitcoin-node should be changed to fix by (1) fixing the abort described in https://github.com/bitcoin-core/libmultiprocess/issues/226 and (2) improving the mining interface so there is a way to interrupt waitNext calls.

    I think currently the only reliable way to avoid triggering the abort is to avoid disconnecting until waitNext returns.

    But this might be undesirable because there isn’t currently a way to interrupt the waitNext call and have it return early. It would be good if bitcoin-node would address this by adding a new BlockTemplate interruptWait method, or just have BlockTemplate destructor interrupt the wait. The client should have some clean way of interrupting the waitNext call if it no longer needs a new block so mining interface clients can shut down quickly and cleanly.

  12. plebhash commented at 1:57 pm on October 8, 2025: none

    I have a question related to the approach I started taking with the insights coming from the crashes reported here.

    following your advice, I’m no longer using one single server thread for everything… now there’s one “static” server thread that’s responsible for all non-blocking calls (e.g.: fetching some template data or submitting solution to some template)

    and for waitNext, there’s dedicated server thread(s)

    the thing is, I still need to cater for incoming Sv2 CoinbaseOutputConstraints messages, and whenever that arrives, I need to make sure the BlockTemplate (or TemplateIpcClient as I’m aliasing on the rust code) that’s used to kickstart the next waitNext loops has the correct block_reserved_weight and max_additional_sigops as defined on the Sv2 message.

    and since I cannot interfere with server thread dedicated to the ongoing waitNext (because it would lead to crashes), I’m being forced to instantiate yet another server thread, just so I can instantiate the new BlockTemplate with the new coinbase constraints and kickstart the new waitNext loop

    so my question is: by doing this, am I risking unbounded resource consumption on bitcoin-node? because basically I’m not taking any explicit steps to kill the server thread that was dedicated for waitNext loops under the previous coinbase constraints… the reference to ThreadIpcClient is simply dropped from memory, and that’s it.

    anyways, once the changes mentioned on the comment above take place, this should no longer be a relevant issue, because as soon as CoinbaseOutputConstraints arrived, I’d be able to kill the current waitNext call and simply use the same server thread for the new one, so the rust client would always be using only two server threads without any need for creating more server threads every time we had new coinbase constraints

    but I felt I should ask anyways, because it seems like an important concept that’s still foggy on my mental model for IPC

  13. ryanofsky commented at 4:32 pm on October 8, 2025: contributor

    These are good questions. I opened #33575 to figure out how to cancel waitNext calls, and I think it should not be hard to provide that.

    More broadly, I think I’d try just having a c++ “waiter” thread dedicated to running waitNext calls, and a c++ “worker” thread to run all other IPC operations besides waitNext. The “waiter” thread should be mostly blocked monitoring mempool and network, and the “worker” thread should be available to do anything else you might need like fetching and submitting block data.

    With current v30 code, there is no mechanism to cancel waitNext calls, so I think simplest approach would be to create a new c++ thread for each waitNext call, effectively having multiple “waiter” threads and one “worker” thread. This will use more resources, but I would not expect it to take a lot more, because presumably block_reserved_weight and max_additional_sigops option values should not change very frequently, and new blocks being connected should provide an upper limit on how long waitNext calls stick around.

  14. plebhash commented at 4:48 pm on October 8, 2025: none

    rephrasing my previous question in a more compact way:

    is there a way to “kill” server threads?


    because presumably block_reserved_weight and max_additional_sigops option values should not change very frequently

    indeed, I think this will be relatively rare in practice… but it’s still something that’s not under our control, and on the current strategy it will lead to unbounded resource consumption on Bitcoin Core side (unless server threads could be killed)

  15. ryanofsky commented at 5:11 pm on October 8, 2025: contributor

    is there a way to “kill” server threads?

    Indirectly, yes. The server threads will destroy themselves as soon as they are no longer referenced, either by the client or an ongoing IPC call that is using them. So as long as the client is not holding references to threads it is not using, they will be cleaned up.

    There is some cost to creating threads, so it’s good to reuse them between calls, and why I recommended having dedicated “waiter” and “worker” threads. But if you wanted to create more threads than that for different calls it would probably work ok in practice.

    and on the current strategy it will lead to unbounded resource consumption on Bitcoin Core side

    As long as there is no way to cancel waitNext calls, it could lead to a lot of threads being created if you need to make many calls. I’d just expect the number to be pretty limited based on how many should be needed. After cancellation is implemented you should be able to get away with having just 2 threads total.

  16. plebhash commented at 7:34 pm on October 8, 2025: none

    Indirectly, yes. The server threads will destroy themselves as soon as they are no longer referenced, either by the client or an ongoing IPC call that is using them. So as long as the client is not holding references to threads it is not using, they will be cleaned up.

    ok I had AI tell me the same thing but didn’t want to blindly trust it, so that’s why I went out of my way to confirm that. Good to know.

    then also what I said about unbounded resource consumption above is not true, since references to server threads for the old waitNext loops are dropped.

    but still, ideally only 2 threads should be enough, and I guess we’ll get there eventually.


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: 2025-10-10 15:13 UTC

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