Build against commit f197a4c515757262eda0accbe762e311335be11b, a small change from master branch 09627b1dd41d1151a709d5ead82a924bf59e3d38 - bitcoin-qt had been running for 12 hours or so without a problem, was fully synced, then suddenly I saw an error frame pop up with no content. Here's a screenshot:

![screenshot](https://user-images.githubusercontent.com/573356/30515480-47028746-9add-11e7-8970-2b9602dfd291.png)

The debug.log shows block 485584 was received, then 36 seconds later db corruption was found:

    2017-09-16 15:21:03 UpdateTip: new best=000000000000000000f9dec71fb25bda22ba734ad133c24c8553fb66fee2f98e height=485584 version=0x20000000 log2_work=87.116783 tx=254942322 date='2017-09-16 15:20:14' progress=0.999999 cache=65.6MiB(504658txo) warning='5 of last 100 blocks have unexpected version'
    2017-09-16 15:21:39 LevelDB read failure: Corruption: block checksum mismatch
    2017-09-16 15:21:39 Corruption: block checksum mismatch
    2017-09-16 15:22:02 connect() to [2001:0:9d38:90d7:1097:91ba:f1ff:5782]:8333 failed: Network is unreachable (101)
    2017-09-16 15:41:38 socket sending timeout: 1201s
    2017-09-16 15:41:38 socket sending timeout: 1201s
    2017-09-16 15:41:38 socket sending timeout: 1201s
    2017-09-16 15:41:39 socket sending timeout: 1201s
    2017-09-16 15:41:39 socket sending timeout: 1201s
    2017-09-16 15:41:39 socket sending timeout: 1201s
    2017-09-16 15:41:39 socket sending timeout: 1201s
    2017-09-16 15:41:40 socket sending timeout: 1201s

Nothing has been written to the log since then, and neither the main Bitcoin window nor the error popup has been painted since.

A few weeks ago I saw a similar error, but at that point I was attempting to track down a race condition on startup and so wasn't surprised when I saw some database corruption. But I fixed it by doing a `-reindex-chainstate` and hadn't had a problem since, until now.

I attached gdb to the frozen bitcoin-qt process to get the stack traces:

    12:51:18 chris@chris:~/Programs/bitcoin.git/src$ ps -ef | grep bitcoin
    chris    17648 31052  0 Sep15 pts/5    00:03:57 /home/chris/Programs/bitcoin.git/src/qt/bitcoin-qt -datadir=/home/chris/.bitcoin
    chris    23785 31653  0 08:22 pts/7    00:00:00 tail -f /home/chris/.bitcoin/debug.log
    chris    28346 14411  0 12:51 pts/0    00:00:00 grep bitcoin
    12:51:53 chris@chris:~/Programs/bitcoin.git/src$ gdb /home/chris/Programs/bitcoin.git/src/qt/bitcoin-qt 17648
    GNU gdb (Debian 7.12-6) 7.12.0.20161007-git
    Copyright (C) 2016 Free Software Foundation, Inc.
    License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
    This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
    and "show warranty" for details.
    This GDB was configured as "x86_64-linux-gnu".
    Type "show configuration" for configuration details.
    For bug reporting instructions, please see:
    <http://www.gnu.org/software/gdb/bugs/>.
    Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.
    For help, type "help".
    Type "apropos word" to search for commands related to "word"...
    Reading symbols from /home/chris/Programs/bitcoin.git/src/qt/bitcoin-qt...done.
    Attaching to program: /home/chris/Programs/bitcoin.git/src/qt/bitcoin-qt, process 17648
    [New LWP 17649]
    [New LWP 17650]
    [New LWP 17651]
    [New LWP 17652]
    [New LWP 17653]
    [New LWP 17654]
    [New LWP 17655]
    [New LWP 17656]
    [New LWP 17657]
    [New LWP 17658]
    [New LWP 17659]
    [New LWP 17660]
    [New LWP 17664]
    [New LWP 17671]
    [New LWP 17673]
    [New LWP 17674]
    [New LWP 17675]
    [New LWP 17676]
    [New LWP 17677]
    [Thread debugging using libthread_db enabled]
    Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
    __lll_lock_wait () at ../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:135
    135	../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: No such file or directory.
    (gdb) thread apply all where

    Thread 20 (Thread 0x7ff63debb700 (LWP 17677)):
    #0  0x00007ff692d586ad in poll () at ../sysdeps/unix/syscall-template.S:84
    #1  0x00007ff69068f9f6 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
    #2  0x00007ff69068fb0c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
    #3  0x00007ff69532004f in QEventDispatcherGlib::processEvents (this=0x7ff6240008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:423
    #4  0x00007ff6952c99ca in QEventLoop::exec (this=this@entry=0x7ff63debacc0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212
    #5  0x00007ff6950f70f3 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:507
    #6  0x00007ff6950fbda8 in QThreadPrivate::start (arg=0x56128c7f02a0) at thread/qthread_unix.cpp:368
    #7  0x00007ff6947b9494 in start_thread (arg=0x7ff63debb700) at pthread_create.c:333
    #8  0x00007ff692d61aff in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

    Thread 19 (Thread 0x7ff63d245700 (LWP 17676)):
    #0  0x00007ff692d586ad in poll () at ../sysdeps/unix/syscall-template.S:84
    #1  0x00007ff69068f9f6 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
    #2  0x00007ff69068fb0c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
    #3  0x00007ff69532004f in QEventDispatcherGlib::processEvents (this=0x7ff6200008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:423
    #4  0x00007ff6952c99ca in QEventLoop::exec (this=this@entry=0x7ff63d244cc0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212
    #5  0x00007ff6950f70f3 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:507
    #6  0x00007ff6950fbda8 in QThreadPrivate::start (arg=0x56128b923d40) at thread/qthread_unix.cpp:368
    #7  0x00007ff6947b9494 in start_thread (arg=0x7ff63d245700) at pthread_create.c:333
    #8  0x00007ff692d61aff in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

    Thread 18 (Thread 0x7ff63e70c700 (LWP 17675)):
    #0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
    #1  0x00007ff6950fcc6b in QWaitConditionPrivate::wait (time=18446744073709551615, this=0x7ff633dd4480) at thread/qwaitcondition_unix.cpp:143
    #2  QWaitCondition::wait (this=this@entry=0x7ff6154c9468, mutex=mutex@entry=0x7ff6154c9460, time=time@entry=18446744073709551615)
        at thread/qwaitcondition_unix.cpp:215
    #3  0x00007ff6950f5b33 in QSemaphore::acquire (this=this@entry=0x7ff63e702890, n=n@entry=1) at thread/qsemaphore.cpp:143
    #4  0x00007ff6952d68cd in QMetaMethod::invoke (this=this@entry=0x7ff63e702af8, object=object@entry=0x56128b9167c0, connectionType=Qt::BlockingQueuedConnection, 
        connectionType@entry=1047538560, returnValue=..., val0=..., val1=..., val2=..., val3=..., val4=..., val5=..., val6=..., val7=..., val8=..., val9=...)
        at kernel/qmetaobject.cpp:2279
    #5  0x00007ff6952dc58a in QMetaObject::invokeMethod (obj=0x56128b9167c0, member=0x56128a8e58de "message", type=1047538560, ret=..., val0=..., val1=..., val2=..., 
        val3=..., val4=..., val5=..., val6=..., val7=..., val8=..., val9=...) at kernel/qmetaobject.cpp:1489
    #6  0x000056128a01880c in QMetaObject::invokeMethod (member=0x80 <error: Cannot access memory at address 0x80>, type=Qt::BlockingQueuedConnection, val0=..., 
        obj=<optimized out>, val1=..., val2=..., val3=..., val4=..., val5=..., val6=..., val7=..., val8=..., val9=...)
        at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs.h:460
    #7  ThreadSafeMessageBox (gui=0x56128b9167c0, message="Error reading from database, shutting down.", caption=..., style=<optimized out>) at qt/bitcoingui.cpp:1167
    #8  0x000056128a01ccb7 in boost::_bi::list4<boost::_bi::value<BitcoinGUI*>, boost::arg<1>, boost::arg<2>, boost::arg<3> >::operator()<bool, bool (*)(BitcoinGUI*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::_bi::rrlist3<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int> > (f=<error reading variable>, this=<optimized out>, a=...)
        at /usr/include/boost/bind/bind.hpp:453
    #9  boost::_bi::bind_t<bool, bool (*)(BitcoinGUI*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::_bi::list4<boost::_bi::value<BitcoinGUI*>, boost::arg<1>, boost::arg<2>, boost::arg<3> > >::operator()<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int&&) (a1=<error reading variable: Cannot access memory at address 0x88>, 
        a2=<error reading variable: Cannot access memory at address 0x9>, this=<optimized out>, a3=<optimized out>) at /usr/include/boost/bind/bind.hpp:1330
    #10 boost::detail::function::function_obj_invoker3<boost::_bi::bind_t<bool, bool (*)(BitcoinGUI*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::_bi::list4<boost::_bi::value<BitcoinGUI*>, boost::arg<1>, boost::arg<2>, boost::arg<3> > >, bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int>::invoke (function_obj_ptr=..., 
        a0=<error reading variable: Cannot access memory at address 0x88>, a1=<error reading variable: Cannot access memory at address 0x9>, a2=2491150687)
        at /usr/include/boost/function/function_template.hpp:138
    #11 0x000056128a17b81e in boost::function3<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int>::operator() (a0=<error reading variable: Cannot access memory at address 0x88>, 
        a1=<error reading variable: Cannot access memory at address 0x9>, a2=2491150687, this=<optimized out>) at /usr/include/boost/function/function_template.hpp:770
    #12 boost::signals2::detail::call_with_tuple_args<bool>::m_invoke<boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)>, 0u, 1u, 2u, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int&>(boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)>&, boost::signals2::detail::unsigned_meta_array<0u, 1u, 2u>, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int&> const&, boost::disable_if<boost::is_void<boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)>::result_type>, void>::type*) const (this=<optimized out>, func=..., args=...)
        at /usr/include/boost/signals2/detail/variadic_slot_invoker.hpp:98
    #13 boost::signals2::detail::call_with_tuple_args<bool>::operator()<boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int&, 3ul>(boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)>&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int&> const&, mpl_::size_t<3ul>) const (this=<optimized out>, func=..., args=...)
        at /usr/include/boost/signals2/detail/variadic_slot_invoker.hpp:90
    #14 boost::signals2::detail::variadic_slot_invoker<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int>::operator()<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)> >, boost::signals2::mutex> > >(boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)> >, boost::signals2::mutex> > const&) const (
        this=<optimized out>, connectionBody=...) at /usr/include/boost/signals2/detail/variadic_slot_invoker.hpp:133
    #15 boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::variadic_slot_invoker<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int>, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)> >, boost::signals2::mutex> >::dereference() const (this=0x7ff63e703010) at /usr/include/boost/signals2/detail/slot_call_iterator.hpp:110
    #16 0x000056128a17ac98 in boost::iterators::iterator_core_access::dereference<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::variadic_slot_invoker<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int>, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)> >, boost::signals2::mutex> > >(boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::variadic_slot_invoker<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int>, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)> >, boost::signals2::mutex> > const&) (f=...) at /usr/include/boost/iterator/iterator_facade.hpp:549
    #17 boost::iterators::detail::iterator_facade_base<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::variadic_slot_invoker<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int>, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)> >, boost::signals2::mutex> >, bool, boost::iterators::single_pass_traversal_tag, bool&, long, false, false>::operator*() const (
        this=<optimized out>) at /usr/include/boost/iterator/iterator_facade.hpp:655
    #18 boost::signals2::last_value<bool>::operator()<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::variadic_slot_invoker<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int>, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)> >, boost::signals2::mutex> > >(boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::variadic_slot_invoker<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int>, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)> >, boost::signals2::mutex> >, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::variadic_slot_invoker<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int>, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)> >, boost::signals2::mutex> >) const (this=<optimized out>, first=..., last=...) at /usr/include/boost/signals2/last_value.hpp:48
    #19 0x000056128a17a930 in boost::signals2::detail::combiner_invoker<bool>::operator()<boost::signals2::last_value<bool>, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::variadic_slot_invoker<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int>, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)> >, boost::signals2::mutex> > >(boost::signals2::last_value<bool>&, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::variadic_slot_invoker<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int>, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)> >, boost::signals2::mutex> >, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::variadic_slot_invoker<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int>, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)> >, boost::signals2::mutex> >) const (combiner=..., this=<optimized out>, first=..., last=...) at /usr/include/boost/signals2/detail/result_type_wrapper.hpp:53
    #20 boost::signals2::detail::signal_impl<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::signals2::last_value<bool>, int, std::less<int>, boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)>, boost::function<bool (boost::signals2::connection const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)>, boost::signals2::mutex>::operator()(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int) (
        this=0x56128b705d20, args=<optimized out>, args=<optimized out>, args=<optimized out>) at /usr/include/boost/signals2/detail/signal_template.hpp:242
    #21 0x000056128a17a13d in boost::signals2::signal<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int), boost::signals2::last_value<bool>, int, std::less<int>, boost::function<bool (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)>, boost::function<bool (boost::signals2::connection const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)>, boost::signals2::mutex>::operator()(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int) (args=..., args=..., this=<optimized out>, args=...) at /usr/include/boost/signals2/detail/signal_template.hpp:723
    #22 CCoinsViewErrorCatcher::GetCoin (this=<optimized out>, outpoint=..., coin=...) at init.cpp:143
    #23 0x000056128a46e462 in CCoinsViewCache::FetchCoin (this=0x7ff648ab9ee0, outpoint=...) at coins.cpp:48
    #24 0x000056128a46e549 in CCoinsViewCache::GetCoin (this=0x7ff633dd44ac, outpoint=..., coin=...) at coins.cpp:61
    #25 0x000056128a2c8414 in CCoinsViewMemPool::GetCoin (this=0x7ff63e7038a8, outpoint=..., coin=...) at txmempool.cpp:902
    #26 0x000056128a46e462 in CCoinsViewCache::FetchCoin (this=0x7ff63e704530, outpoint=...) at coins.cpp:48
    #27 0x000056128a46eb03 in CCoinsViewCache::HaveCoin (this=0x7ff633dd44ac, outpoint=...) at coins.cpp:129
    #28 0x000056128a30c5cc in AcceptToMemoryPoolWorker (chainparams=..., pool=..., state=..., ptx=..., fLimitFree=<optimized out>, pfMissingInputs=<optimized out>, 
        nAcceptTime=140697029833055, plTxnReplaced=0x56128acc70f0 <pcoinsTip>, fOverrideMempoolLimit=false, nAbsurdFee=@0x7ff63e7044d0: -2962908112588391035, 
        coins_to_uncache=...) at validation.cpp:547
    #29 0x000056128a2de858 in AcceptToMemoryPoolWithTime (chainparams=..., pool=..., state=..., 
        tx=<error reading variable: Cannot access memory at address 0x1be08247c8b50>, fLimitFree=<optimized out>, pfMissingInputs=0x0, nAcceptTime=1505575299, 
        plTxnReplaced=0x7ff63e7083a8, fOverrideMempoolLimit=<optimized out>, nAbsurdFee=0) at validation.cpp:886
    #30 0x000056128a2de122 in AcceptToMemoryPool (pool=..., state=..., tx=<error reading variable: Cannot access memory at address 0x1be08247c8b50>, fLimitFree=true, 
        pfMissingInputs=0x0, plTxnReplaced=0x7ff63e7083a8, fOverrideMempoolLimit=<optimized out>, nAbsurdFee=<optimized out>) at validation.cpp:902
    #31 0x000056128a1d7266 in ProcessMessage (pfrom=<optimized out>, strCommand=..., vRecv=..., nTimeReceived=<optimized out>, chainparams=..., 
        connman=<optimized out>, interruptMsgProc=...) at net_processing.cpp:1791
    #32 0x000056128a1cbf12 in PeerLogicValidation::ProcessMessages (this=0x7ff664046440, pfrom=0x7ff62822f0f0, interruptMsgProc=...) at net_processing.cpp:2718
    #33 0x000056128a1f8037 in non-virtual thunk to PeerLogicValidation::ProcessMessages(CNode*, std::atomic<bool>&) () at net_processing.cpp:2643
    #34 0x000056128a1a767b in CConnman::ThreadMessageHandler (this=<optimized out>) at net.cpp:1995
    #35 0x000056128a1c24ba in std::__invoke_impl<void, void (CConnman::* const&)(), CConnman*&> (__f=<optimized out>, __t=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:227
    #36 std::__invoke<void (CConnman::* const&)(), CConnman*&> (__fn=<optimized out>, __args=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:250
    #37 std::_Mem_fn_base<void (CConnman::*)(), true>::operator()<CConnman*&> (this=<optimized out>, __args=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:604
    #38 std::_Bind<std::_Mem_fn<void (CConnman::*)()> (CConnman*)>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) (this=<optimized out>, 
        __args=<optimized out>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:933
    #39 std::_Bind<std::_Mem_fn<void (CConnman::*)()> (CConnman*)>::operator()<, void>() (this=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:991
    #40 std::_Function_handler<void (), std::_Bind<std::_Mem_fn<void (CConnman::*)()> (CConnman*)> >::_M_invoke(std::_Any_data const&) (__functor=...)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1731
    #41 0x000056128a176e3d in std::function<void ()>::operator()() const (this=0x7ff63e70bd00)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:2127
    #42 TraceThread<std::function<void ()> >(char const*, std::function<void ()>) (name=<optimized out>, func=...) at ./util.h:309
    #43 0x000056128a1c267d in std::_Bind_simple<void (*(char const*, std::function<void ()>))(char const*, std::function<void ()>)>::_M_invoke<0ul, 1ul>(std::_Index_tuple<0ul, 1ul>) (this=<optimized out>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1390
    #44 std::_Bind_simple<void (*(char const*, std::function<void ()>))(char const*, std::function<void ()>)>::operator()() (this=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1380
    #45 std::thread::_State_impl<std::_Bind_simple<void (*(char const*, std::function<void ()>))(char const*, std::function<void ()>)> >::_M_run() (
        this=<optimized out>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/thread:197
    #46 0x00007ff6935ece6f in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
    #47 0x00007ff6947b9494 in start_thread (arg=0x7ff63e70c700) at pthread_create.c:333
    #48 0x00007ff692d61aff in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

    Thread 17 (Thread 0x7ff63ef5d700 (LWP 17674)):
    #0  __lll_lock_wait () at ../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:135
    #1  0x00007ff6947bbc06 in __GI___pthread_mutex_lock (mutex=0x56128acc6b88 <cs_main>) at ../nptl/pthread_mutex_lock.c:115
    #2  0x000056128a0259d5 in boost::recursive_mutex::lock (this=<optimized out>) at /usr/include/boost/thread/pthread/recursive_mutex.hpp:113
    #3  AnnotatedMixin<boost::recursive_mutex>::lock (this=<optimized out>) at ./sync.h:59
    #4  boost::unique_lock<CCriticalSection>::lock (this=0x7ff63ef5c250) at /usr/include/boost/thread/lock_types.hpp:346
    #5  0x000056128a1c406a in CMutexLock<CCriticalSection>::Enter (this=0x56128acc6b88 <cs_main>, nLine=504, pszName=<optimized out>, pszFile=<optimized out>)
        at ./sync.h:123
    #6  CMutexLock<CCriticalSection>::CMutexLock (this=0x56128acc6b88 <cs_main>, nLine=504, fTry=false, mutexIn=..., pszName=<optimized out>, pszFile=<optimized out>)
        at ./sync.h:144
    #7  PeerLogicValidation::InitializeNode (this=0x7ff664046440, pnode=0x7ff6282bb0d0) at net_processing.cpp:504
    #8  0x000056128a1c5657 in non-virtual thunk to PeerLogicValidation::InitializeNode(CNode*) () at net_processing.cpp:499
    #9  0x000056128a1a4602 in CConnman::OpenNetworkConnection (this=0x7ff66456ad30, addrConnect=..., fCountFailure=<optimized out>, grantOutbound=<optimized out>, 
        pszDest=0x0, fOneShot=<optimized out>, fFeeler=<optimized out>, fAddnode=92) at net.cpp:1965
    #10 0x000056128a1a5508 in CConnman::ThreadOpenConnections (this=<optimized out>, connect=...) at net.cpp:1840
    #11 0x000056128a1c2887 in std::__invoke_impl<void, void (CConnman::* const&)(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >), CConnman*&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&> (
        __f=<optimized out>, __t=<optimized out>, __args=<error reading variable: Cannot access memory at address 0x8>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:227
    #12 0x000056128a1c270e in std::__invoke<void (CConnman::* const&)(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >), CConnman*&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&> (__fn=
        @0x56128acc6b88: (void (CConnman::*)(CConnman * const, std::vector<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char> > >)) 0x100000002, this adjustment 4294984971, __args=..., __args=...) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:250
    #13 std::_Mem_fn_base<void (CConnman::*)(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >), true>::operator()<CConnman*&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&> (__args=..., __args=..., 
        this=<optimized out>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:604
    #14 std::_Bind<std::_Mem_fn<void (CConnman::*)(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >)> (CConnman*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >)>::__call<void, , 0ul, 1ul>(std::tuple<>&&, std::_Index_tuple<0ul, 1ul>) (this=0x56128acc6b88 <cs_main>, __args=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:933
    #15 std::_Bind<std::_Mem_fn<void (CConnman::*)(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >)> (CConnman*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >)>::operator()<, void>() (
        this=0x56128acc6b88 <cs_main>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:991
    #16 std::_Function_handler<void (), std::_Bind<std::_Mem_fn<void (CConnman::*)(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >)> (CConnman*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >)> >::_M_invoke(std::_Any_data const&) (__functor=...) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1731
    #17 0x000056128a176e3d in std::function<void ()>::operator()() const (this=0x7ff63ef5cd00)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:2127
    #18 TraceThread<std::function<void ()> >(char const*, std::function<void ()>) (name=<optimized out>, func=...) at ./util.h:309
    #19 0x000056128a1c267d in std::_Bind_simple<void (*(char const*, std::function<void ()>))(char const*, std::function<void ()>)>::_M_invoke<0ul, 1ul>(std::_Index_tuple<0ul, 1ul>) (this=<optimized out>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1390
    #20 std::_Bind_simple<void (*(char const*, std::function<void ()>))(char const*, std::function<void ()>)>::operator()() (this=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1380
    #21 std::thread::_State_impl<std::_Bind_simple<void (*(char const*, std::function<void ()>))(char const*, std::function<void ()>)> >::_M_run() (
        this=<optimized out>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/thread:197
    #22 0x00007ff6935ece6f in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
    #23 0x00007ff6947b9494 in start_thread (arg=0x7ff63ef5d700) at pthread_create.c:333
    #24 0x00007ff692d61aff in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

    Thread 16 (Thread 0x7ff63f7ae700 (LWP 17673)):
    #0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
    #1  0x000056128a49b56e in __gthread_cond_timedwait (__cond=<optimized out>, __mutex=<optimized out>, __abs_timeout=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/x86_64-linux-gnu/c++/6.3.0/bits/gthr-default.h:871
    #2  std::condition_variable::__wait_until_impl<std::chrono::duration<long, std::ratio<1l, 1000000000l> > > (this=<optimized out>, __lock=..., __atime=...)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/condition_variable:166
    #3  std::condition_variable::wait_until<std::chrono::duration<long, std::ratio<1l, 1000000000l> > > (this=<optimized out>, __lock=..., __atime=...)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/condition_variable:106
    #4  std::condition_variable::wait_until<std::chrono::_V2::system_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> >, CThreadInterrupt::sleep_for(std::chrono::duration<long, std::ratio<1l, 1000l> >)::$_0>(std::unique_lock<std::mutex>&, std::chrono::time_point<std::chrono::_V2::system_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > const&, CThreadInterrupt::sleep_for(std::chrono::duration<long, std::ratio<1l, 1000l> >)::$_0) (this=<optimized out>, 
        __lock=..., __atime=..., __p=...) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/condition_variable:129
    #5  std::condition_variable::wait_for<long, std::ratio<1l, 1000l>, CThreadInterrupt::sleep_for(std::chrono::duration<long, std::ratio<1l, 1000l> >)::$_0>(std::unique_lock<std::mutex>&, std::chrono::duration<long, std::ratio<1l, 1000l> > const&, CThreadInterrupt::sleep_for(std::chrono::duration<long, std::ratio<1l, 1000l> >)::$_0) (this=<optimized out>, __lock=..., __rtime=..., __p=...) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/condition_variable:145
    #6  CThreadInterrupt::sleep_for (this=<optimized out>, rel_time=...) at threadinterrupt.cpp:30
    #7  0x000056128a49b5fa in CThreadInterrupt::sleep_for (this=0x7ff6645bb1a4, rel_time=...) at threadinterrupt.cpp:35
    #8  0x000056128a1a7316 in CConnman::ThreadOpenAddedConnections (this=<optimized out>) at net.cpp:1927
    #9  0x000056128a1c24ba in std::__invoke_impl<void, void (CConnman::* const&)(), CConnman*&> (__f=<optimized out>, __t=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:227
    #10 std::__invoke<void (CConnman::* const&)(), CConnman*&> (__fn=<optimized out>, __args=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:250
    #11 std::_Mem_fn_base<void (CConnman::*)(), true>::operator()<CConnman*&> (this=<optimized out>, __args=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:604
    #12 std::_Bind<std::_Mem_fn<void (CConnman::*)()> (CConnman*)>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) (this=<optimized out>, 
        __args=<optimized out>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:933
    #13 std::_Bind<std::_Mem_fn<void (CConnman::*)()> (CConnman*)>::operator()<, void>() (this=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:991
    #14 std::_Function_handler<void (), std::_Bind<std::_Mem_fn<void (CConnman::*)()> (CConnman*)> >::_M_invoke(std::_Any_data const&) (__functor=...)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1731
    #15 0x000056128a176e3d in std::function<void ()>::operator()() const (this=0x7ff63f7add00)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:2127
    #16 TraceThread<std::function<void ()> >(char const*, std::function<void ()>) (name=<optimized out>, func=...) at ./util.h:309
    #17 0x000056128a1c267d in std::_Bind_simple<void (*(char const*, std::function<void ()>))(char const*, std::function<void ()>)>::_M_invoke<0ul, 1ul>(std::_Index_tuple<0ul, 1ul>) (this=<optimized out>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1390
    #18 std::_Bind_simple<void (*(char const*, std::function<void ()>))(char const*, std::function<void ()>)>::operator()() (this=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1380
    #19 std::thread::_State_impl<std::_Bind_simple<void (*(char const*, std::function<void ()>))(char const*, std::function<void ()>)> >::_M_run() (
        this=<optimized out>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/thread:197
    #20 0x00007ff6935ece6f in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
    #21 0x00007ff6947b9494 in start_thread (arg=0x7ff63f7ae700) at pthread_create.c:333
    #22 0x00007ff692d61aff in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

    Thread 15 (Thread 0x7ff645ec7700 (LWP 17671)):
    #0  0x00007ff692d5a3f3 in select () at ../sysdeps/unix/syscall-template.S:84
    #1  0x000056128a19da64 in CConnman::ThreadSocketHandler (this=<optimized out>) at net.cpp:1251
    #2  0x000056128a1c24ba in std::__invoke_impl<void, void (CConnman::* const&)(), CConnman*&> (__f=<optimized out>, __t=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:227
    #3  std::__invoke<void (CConnman::* const&)(), CConnman*&> (__fn=<optimized out>, __args=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:250
    #4  std::_Mem_fn_base<void (CConnman::*)(), true>::operator()<CConnman*&> (this=<optimized out>, __args=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:604
    #5  std::_Bind<std::_Mem_fn<void (CConnman::*)()> (CConnman*)>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) (this=<optimized out>, 
        __args=<optimized out>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:933
    #6  std::_Bind<std::_Mem_fn<void (CConnman::*)()> (CConnman*)>::operator()<, void>() (this=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:991
    #7  std::_Function_handler<void (), std::_Bind<std::_Mem_fn<void (CConnman::*)()> (CConnman*)> >::_M_invoke(std::_Any_data const&) (__functor=...)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1731
    #8  0x000056128a176e3d in std::function<void ()>::operator()() const (this=0x7ff645ec6d00)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:2127
    #9  TraceThread<std::function<void ()> >(char const*, std::function<void ()>) (name=<optimized out>, func=...) at ./util.h:309
    #10 0x000056128a1c267d in std::_Bind_simple<void (*(char const*, std::function<void ()>))(char const*, std::function<void ()>)>::_M_invoke<0ul, 1ul>(std::_Index_tuple<0ul, 1ul>) (this=<optimized out>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1390
    #11 std::_Bind_simple<void (*(char const*, std::function<void ()>))(char const*, std::function<void ()>)>::operator()() (this=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1380
    #12 std::thread::_State_impl<std::_Bind_simple<void (*(char const*, std::function<void ()>))(char const*, std::function<void ()>)> >::_M_run() (
        this=<optimized out>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/thread:197
    #13 0x00007ff6935ece6f in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
    #14 0x00007ff6947b9494 in start_thread (arg=0x7ff645ec7700) at pthread_create.c:333
    #15 0x00007ff692d61aff in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

    Thread 14 (Thread 0x7ff658cf7700 (LWP 17664)):
    #0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
    #1  0x000056128a4f38ab in leveldb::(anonymous namespace)::PosixEnv::BGThread (this=<optimized out>) at leveldb/util/env_posix.cc:641
    #2  leveldb::(anonymous namespace)::PosixEnv::BGThreadWrapper (arg=<optimized out>) at leveldb/util/env_posix.cc:556
    #3  0x00007ff6947b9494 in start_thread (arg=0x7ff658cf7700) at pthread_create.c:333
    #4  0x00007ff692d61aff in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

    Thread 13 (Thread 0x7ff668e19700 (LWP 17660)):
    #0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
    #1  0x00007ff6935e750c in std::condition_variable::wait(std::unique_lock<std::mutex>&) () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
    #2  0x000056128a381c2a in WorkQueue<HTTPClosure>::Run (this=<optimized out>) at httpserver.cpp:127
    #3  0x000056128a37baca in HTTPWorkQueueRun (queue=0x7ff664044c7c) at httpserver.cpp:351
    #4  0x000056128a383508 in std::_Bind_simple<void (*(WorkQueue<HTTPClosure>*))(WorkQueue<HTTPClosure>*)>::_M_invoke<0ul>(std::_Index_tuple<0ul>) (
        this=<optimized out>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1390
    #5  std::_Bind_simple<void (*(WorkQueue<HTTPClosure>*))(WorkQueue<HTTPClosure>*)>::operator()() (this=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1380
    #6  std::thread::_State_impl<std::_Bind_simple<void (*(WorkQueue<HTTPClosure>*))(WorkQueue<HTTPClosure>*)> >::_M_run() (this=0xfffffffffffffe00)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/thread:197
    #7  0x00007ff6935ece6f in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
    #8  0x00007ff6947b9494 in start_thread (arg=0x7ff668e19700) at pthread_create.c:333
    #9  0x00007ff692d61aff in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

    Thread 12 (Thread 0x7ff66966a700 (LWP 17659)):
    #0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
    #1  0x00007ff6935e750c in std::condition_variable::wait(std::unique_lock<std::mutex>&) () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
    #2  0x000056128a381c2a in WorkQueue<HTTPClosure>::Run (this=<optimized out>) at httpserver.cpp:127
    #3  0x000056128a37baca in HTTPWorkQueueRun (queue=0x7ff664044c7c) at httpserver.cpp:351
    #4  0x000056128a383508 in std::_Bind_simple<void (*(WorkQueue<HTTPClosure>*))(WorkQueue<HTTPClosure>*)>::_M_invoke<0ul>(std::_Index_tuple<0ul>) (
        this=<optimized out>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1390
    #5  std::_Bind_simple<void (*(WorkQueue<HTTPClosure>*))(WorkQueue<HTTPClosure>*)>::operator()() (this=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1380
    #6  std::thread::_State_impl<std::_Bind_simple<void (*(WorkQueue<HTTPClosure>*))(WorkQueue<HTTPClosure>*)> >::_M_run() (this=0xfffffffffffffe00)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/thread:197
    #7  0x00007ff6935ece6f in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
    #8  0x00007ff6947b9494 in start_thread (arg=0x7ff66966a700) at pthread_create.c:333
    #9  0x00007ff692d61aff in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

    Thread 11 (Thread 0x7ff669ebb700 (LWP 17658)):
    #0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
    #1  0x00007ff6935e750c in std::condition_variable::wait(std::unique_lock<std::mutex>&) () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
    #2  0x000056128a381c2a in WorkQueue<HTTPClosure>::Run (this=<optimized out>) at httpserver.cpp:127
    #3  0x000056128a37baca in HTTPWorkQueueRun (queue=0x7ff664044c7c) at httpserver.cpp:351
    #4  0x000056128a383508 in std::_Bind_simple<void (*(WorkQueue<HTTPClosure>*))(WorkQueue<HTTPClosure>*)>::_M_invoke<0ul>(std::_Index_tuple<0ul>) (
        this=<optimized out>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1390
    #5  std::_Bind_simple<void (*(WorkQueue<HTTPClosure>*))(WorkQueue<HTTPClosure>*)>::operator()() (this=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1380
    #6  std::thread::_State_impl<std::_Bind_simple<void (*(WorkQueue<HTTPClosure>*))(WorkQueue<HTTPClosure>*)> >::_M_run() (this=0xfffffffffffffe00)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/thread:197
    #7  0x00007ff6935ece6f in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
    #8  0x00007ff6947b9494 in start_thread (arg=0x7ff669ebb700) at pthread_create.c:333
    #9  0x00007ff692d61aff in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

    Thread 10 (Thread 0x7ff66a70c700 (LWP 17657)):
    #0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
    #1  0x00007ff6935e750c in std::condition_variable::wait(std::unique_lock<std::mutex>&) () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
    #2  0x000056128a381c2a in WorkQueue<HTTPClosure>::Run (this=<optimized out>) at httpserver.cpp:127
    #3  0x000056128a37baca in HTTPWorkQueueRun (queue=0x7ff664044c7c) at httpserver.cpp:351
    #4  0x000056128a383508 in std::_Bind_simple<void (*(WorkQueue<HTTPClosure>*))(WorkQueue<HTTPClosure>*)>::_M_invoke<0ul>(std::_Index_tuple<0ul>) (
        this=<optimized out>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1390
    #5  std::_Bind_simple<void (*(WorkQueue<HTTPClosure>*))(WorkQueue<HTTPClosure>*)>::operator()() (this=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1380
    #6  std::thread::_State_impl<std::_Bind_simple<void (*(WorkQueue<HTTPClosure>*))(WorkQueue<HTTPClosure>*)> >::_M_run() (this=0xfffffffffffffe00)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/thread:197
    #7  0x00007ff6935ece6f in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
    #8  0x00007ff6947b9494 in start_thread (arg=0x7ff66a70c700) at pthread_create.c:333
    #9  0x00007ff692d61aff in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

    Thread 9 (Thread 0x7ff66af5d700 (LWP 17656)):
    #0  0x00007ff692d620f3 in epoll_wait () at ../sysdeps/unix/syscall-template.S:84
    #1  0x00007ff6938d9d98 in ?? () from /usr/lib/x86_64-linux-gnu/libevent-2.0.so.5
    #2  0x00007ff6938c407a in event_base_loop () from /usr/lib/x86_64-linux-gnu/libevent-2.0.so.5
    #3  0x000056128a37b03f in ThreadHTTP (base=0x7ff6640443d0, http=<optimized out>) at httpserver.cpp:303
    #4  0x000056128a382c4d in std::__invoke_impl<bool, bool (*&)(event_base*, evhttp*), event_base*, evhttp*>(std::__invoke_other, bool (*&)(event_base*, evhttp*), event_base*&&, evhttp*&&) (__f=<optimized out>, __args=<optimized out>, __args=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:210
    #5  std::__invoke<bool (*&)(event_base*, evhttp*), event_base*, evhttp*>(bool (*&)(event_base*, evhttp*), event_base*&&, evhttp*&&) (__fn=<optimized out>, 
        __args=<optimized out>, __args=<optimized out>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:250
    #6  std::reference_wrapper<bool (*)(event_base*, evhttp*)>::operator()<event_base*, evhttp*>(event_base*&&, evhttp*&&) const (__args=<optimized out>, 
        this=<optimized out>, __args=<optimized out>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:465
    #7  std::_Bind_simple<std::reference_wrapper<bool (*)(event_base*, evhttp*)> (event_base*, evhttp*)>::_M_invoke<0ul, 1ul>(std::_Index_tuple<0ul, 1ul>) (
        this=0x7ff692d620f3 <epoll_wait+51>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1390
    #8  std::_Bind_simple<std::reference_wrapper<bool (*)(event_base*, evhttp*)> (event_base*, evhttp*)>::operator()() (this=0x7ff692d620f3 <epoll_wait+51>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1380
    #9  std::__future_base::_Task_setter<std::unique_ptr<std::__future_base::_Result<bool>, std::__future_base::_Result_base::_Deleter>, std::_Bind_simple<std::reference_wrapper<bool (*)(event_base*, evhttp*)> (event_base*, evhttp*)>, bool>::operator()() const (this=0x7ff66af5ccd0)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/future:1325
    #10 0x000056128a382b8f in std::_Function_handler<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> (), std::__future_base::_Task_setter<std::unique_ptr<std::__future_base::_Result<bool>, std::__future_base::_Result_base::_Deleter>, std::_Bind_simple<std::reference_wrapper<bool (*)(event_base*, evhttp*)> (event_base*, evhttp*)>, bool> >::_M_invoke(std::_Any_data const&) (__functor=...)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1716
    #11 0x000056128a382aba in std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>::operator()() const (
        this=0x7ff664044660) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:2127
    #12 std::__future_base::_State_baseV2::_M_do_set(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*) (this=0x7ff664044e80, __f=0x7ff664044660, __did_set=0x7ff66af5cc8f) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/future:533
    #13 0x000056128a382b56 in std::__invoke_impl<void, void (std::__future_base::_State_baseV2::*)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*>(std::__invoke_memfun_deref, void (std::__future_base::_State_baseV2::*&&)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*&&, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*&&, bool*&&) (__f=<optimized out>, __args=<optimized out>, __args=<optimized out>, __t=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:227
    #14 std::__invoke<void (std::__future_base::_State_baseV2::*)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*>(void (std::__future_base::_State_baseV2::*&&)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*&&, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*&&, bool*&&) (__fn=<optimized out>, __args=<optimized out>, __args=<optimized out>, __args=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:250
    #15 void std::call_once<void (std::__future_base::_State_baseV2::*)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*>(std::once_flag&, void (std::__future_base::_State_baseV2::*&&)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*&&, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*&&, bool*&&)::{lambda()#1}::operator()() const (this=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/mutex:602
    #16 void std::call_once<void (std::__future_base::_State_baseV2::*)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*>(std::once_flag&, void (std::__future_base::_State_baseV2::*&&)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*&&, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*&&, bool*&&)::{lambda()#2}::operator()() const (this=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/mutex:607
    #17 void std::call_once<void (std::__future_base::_State_baseV2::*)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*>(std::once_flag&, void (std::__future_base::_State_baseV2::*&&)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*&&, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*&&, bool*&&)::{lambda()#2}::__invoke() () at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/mutex:607
    #18 0x00007ff6947c0739 in __pthread_once_slow (once_control=0x7ff664044e98, init_routine=0x7ff6935ec120 <__once_proxy>) at pthread_once.c:116
    #19 0x000056128a382a39 in __gthread_once (__func=0x7ff664044660, __once=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/x86_64-linux-gnu/c++/6.3.0/bits/gthr-default.h:699
    #20 std::call_once<void (std::__future_base::_State_baseV2::*)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*>(std::once_flag&, void (std::__future_base::_State_baseV2::*&&)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*, bool*), std::__future_base::_State_baseV2*&&, std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>*&&, bool*&&) (__args=<optimized out>, __args=<optimized out>, __args=<optimized out>, __once=..., __f=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/mutex:614
    #21 std::__future_base::_State_baseV2::_M_set_result(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>, bool) (this=0x7ff664044e80, __res=..., __ignore_failure=false) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/future:392
    #22 0x000056128a382491 in std::__future_base::_Task_state<bool (*)(event_base*, evhttp*), std::allocator<int>, bool (event_base*, evhttp*)>::_M_run(event_base*&&, evhttp*&&) (this=0x17, __args=<optimized out>, __args=<optimized out>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/future:1409
    #23 0x000056128a38348b in std::packaged_task<bool (event_base*, evhttp*)>::operator()(event_base*, evhttp*) (
        __args=<error reading variable: Cannot access memory at address 0x20>, __args=<error reading variable: Cannot access memory at address 0x20>, 
        this=<optimized out>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/future:1553
    #24 std::_Bind_simple<std::packaged_task<bool (event_base*, evhttp*)> (event_base*, evhttp*)>::_M_invoke<0ul, 1ul>(std::_Index_tuple<0ul, 1ul>) (
        this=<optimized out>) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1390
    #25 std::_Bind_simple<std::packaged_task<bool (event_base*, evhttp*)> (event_base*, evhttp*)>::operator()() (this=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1380
    #26 std::thread::_State_impl<std::_Bind_simple<std::packaged_task<bool (event_base*, evhttp*)> (event_base*, evhttp*)> >::_M_run() (this=<optimized out>)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/thread:197
    #27 0x00007ff6935ece6f in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
    #28 0x00007ff6947b9494 in start_thread (arg=0x7ff66af5d700) at pthread_create.c:333
    #29 0x00007ff692d61aff in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

    Thread 8 (Thread 0x7ff66b7ae700 (LWP 17655)):
    #0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
    #1  0x000056128a257c82 in boost::condition_variable::do_wait_until (this=0x56128bfebea0, m=..., timeout=...)
        at /usr/include/boost/thread/pthread/condition_variable.hpp:109
    #2  0x000056128a489379 in boost::condition_variable::wait_until (this=<optimized out>, lk=..., tp=...)
        at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:252
    #3  boost::condition_variable::wait_until<boost::chrono::duration<long, boost::ratio<1l, 1000000000l> > > (this=<optimized out>, lock=..., t=...)
        at /usr/include/boost/thread/pthread/condition_variable_fwd.hpp:209
    #4  CScheduler::serviceQueue (this=<optimized out>) at scheduler.cpp:67
    #5  0x000056128a18553a in boost::_mfi::mf0<void, CScheduler>::operator() (p=<optimized out>, this=<optimized out>) at /usr/include/boost/bind/mem_fn_template.hpp:49
    #6  boost::_bi::list1<boost::_bi::value<CScheduler*> >::operator()<boost::_mfi::mf0<void, CScheduler>, boost::_bi::list0> (this=<optimized out>, f=..., a=...)
        at /usr/include/boost/bind/bind.hpp:259
    #7  boost::_bi::bind_t<void, boost::_mfi::mf0<void, CScheduler>, boost::_bi::list1<boost::_bi::value<CScheduler*> > >::operator() (this=<optimized out>)
        at /usr/include/boost/bind/bind.hpp:1294
    #8  std::_Function_handler<void (), boost::_bi::bind_t<void, boost::_mfi::mf0<void, CScheduler>, boost::_bi::list1<boost::_bi::value<CScheduler*> > > >::_M_invoke(std::_Any_data const&) (__functor=...) at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:1731
    #9  0x000056128a176e3d in std::function<void ()>::operator()() const (this=0x7ff66b7adcb8)
        at /usr/bin/../lib/gcc/x86_64-linux-gnu/6.3.0/../../../../include/c++/6.3.0/functional:2127
    #10 TraceThread<std::function<void ()> >(char const*, std::function<void ()>) (name=<optimized out>, func=...) at ./util.h:309
    #11 0x000056128a185ab6 in boost::_bi::list2<boost::_bi::value<char const*>, boost::_bi::value<std::function<void ()> > >::operator()<void (*)(char const*, std::function<void ()>), boost::_bi::list0>(boost::_bi::type<void>, void (*&)(char const*, std::function<void ()>), boost::_bi::list0&, int) (this=0x7ff664043100, 
        f=<optimized out>, a=...) at /usr/include/boost/bind/bind.hpp:319
    #12 0x000056128a185a3f in boost::_bi::bind_t<void, void (*)(char const*, std::function<void ()>), boost::_bi::list2<boost::_bi::value<char const*>, boost::_bi::value<std::function<void ()> > > >::operator()() (this=<optimized out>) at /usr/include/boost/bind/bind.hpp:1294
    #13 boost::detail::thread_data<boost::_bi::bind_t<void, void (*)(char const*, std::function<void ()>), boost::_bi::list2<boost::_bi::value<char const*>, boost::_bi::value<std::function<void ()> > > > >::run() (this=<optimized out>) at /usr/include/boost/thread/detail/thread.hpp:116
    #14 0x00007ff69635d116 in ?? () from /usr/lib/x86_64-linux-gnu/libboost_thread.so.1.62.0
    #15 0x00007ff6947b9494 in start_thread (arg=0x7ff66b7ae700) at pthread_create.c:333
    #16 0x00007ff692d61aff in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

    Thread 7 (Thread 0x7ff66bfff700 (LWP 17654)):
    #0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
    #1  0x000056128a0017eb in boost::condition_variable::wait (this=<optimized out>, m=...) at /usr/include/boost/thread/pthread/condition_variable.hpp:77
    #2  0x000056128a3212f2 in CCheckQueue<CScriptCheck>::Loop (this=<optimized out>, fMaster=<optimized out>) at ./checkqueue.h:102
    #3  0x000056128a2e12c8 in CCheckQueue<CScriptCheck>::Thread (this=0x56128acc71ec <scriptcheckqueue+84>) at ./checkqueue.h:139
    #4  ThreadScriptCheck () at validation.cpp:1540
    #5  0x000056128a185114 in boost::detail::thread_data<void (*)()>::run (this=0x56128acc71ec <scriptcheckqueue+84>) at /usr/include/boost/thread/detail/thread.hpp:116
    #6  0x00007ff69635d116 in ?? () from /usr/lib/x86_64-linux-gnu/libboost_thread.so.1.62.0
    #7  0x00007ff6947b9494 in start_thread (arg=0x7ff66bfff700) at pthread_create.c:333
    #8  0x00007ff692d61aff in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

    Thread 6 (Thread 0x7ff677398700 (LWP 17653)):
    #0  0x00007ff692d586ad in poll () at ../sysdeps/unix/syscall-template.S:84
    #1  0x00007ff69068f9f6 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
    #2  0x00007ff69068fb0c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
    #3  0x00007ff69532004f in QEventDispatcherGlib::processEvents (this=0x7ff6640008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:423
    #4  0x00007ff6952c99ca in QEventLoop::exec (this=this@entry=0x7ff677397cc0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212
    #5  0x00007ff6950f70f3 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:507
    #6  0x00007ff6950fbda8 in QThreadPrivate::start (arg=0x56128bfe7de0) at thread/qthread_unix.cpp:368
    #7  0x00007ff6947b9494 in start_thread (arg=0x7ff677398700) at pthread_create.c:333
    #8  0x00007ff692d61aff in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

    Thread 5 (Thread 0x7ff677be9700 (LWP 17652)):
    #0  0x00007ff692d586ad in poll () at ../sysdeps/unix/syscall-template.S:84
    #1  0x00007ff69068f9f6 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
    #2  0x00007ff69068fb0c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
    #3  0x00007ff69532004f in QEventDispatcherGlib::processEvents (this=0x7ff66c0008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:423
    #4  0x00007ff6952c99ca in QEventLoop::exec (this=this@entry=0x7ff677be8c90, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212
    #5  0x00007ff6950f70f3 in QThread::exec (this=this@entry=0x7ff6955a6d60 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>)
        at thread/qthread.cpp:507
    #6  0x00007ff6955316d5 in QDBusConnectionManager::run (this=0x7ff6955a6d60 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>)
        at qdbusconnection.cpp:178
    #7  0x00007ff6950fbda8 in QThreadPrivate::start (arg=0x7ff6955a6d60 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>)
        at thread/qthread_unix.cpp:368
    #8  0x00007ff6947b9494 in start_thread (arg=0x7ff677be9700) at pthread_create.c:333
    #9  0x00007ff692d61aff in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

    Thread 4 (Thread 0x7ff67df9e700 (LWP 17651)):
    #0  0x00007ff692d586ad in poll () at ../sysdeps/unix/syscall-template.S:84
    #1  0x00007ff69068f9f6 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
    #2  0x00007ff69068fd82 in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
    #3  0x00007ff68473e656 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
    #4  0x00007ff6906b73d5 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
    #5  0x00007ff6947b9494 in start_thread (arg=0x7ff67df9e700) at pthread_create.c:333
    #6  0x00007ff692d61aff in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

    Thread 3 (Thread 0x7ff67e7ef700 (LWP 17650)):
    #0  0x00007ff692d586ad in poll () at ../sysdeps/unix/syscall-template.S:84
    #1  0x00007ff69068f9f6 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
    #2  0x00007ff69068fb0c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
    #3  0x00007ff69068fb51 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
    #4  0x00007ff6906b73d5 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
    #5  0x00007ff6947b9494 in start_thread (arg=0x7ff67e7ef700) at pthread_create.c:333
    #6  0x00007ff692d61aff in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

    Thread 2 (Thread 0x7ff688439700 (LWP 17649)):
    #0  0x00007ff692d586ad in poll () at ../sysdeps/unix/syscall-template.S:84
    #1  0x00007ff68e55c150 in ?? () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
    #2  0x00007ff68e55dee9 in xcb_wait_for_event () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
    #3  0x00007ff68ab9ab69 in QXcbEventReader::run (this=0x56128b83c900) at qxcbconnection.cpp:1343
    #4  0x00007ff6950fbda8 in QThreadPrivate::start (arg=0x56128b83c900) at thread/qthread_unix.cpp:368
    #5  0x00007ff6947b9494 in start_thread (arg=0x7ff688439700) at pthread_create.c:333
    #6  0x00007ff692d61aff in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

    Thread 1 (Thread 0x7ff696f01900 (LWP 17648)):
    #0  __lll_lock_wait () at ../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:135
    #1  0x00007ff6947bbc06 in __GI___pthread_mutex_lock (mutex=0x56128acc6df0 <mempool+56>) at ../nptl/pthread_mutex_lock.c:115
    #2  0x000056128a0259d5 in boost::recursive_mutex::lock (this=<optimized out>) at /usr/include/boost/thread/pthread/recursive_mutex.hpp:113
    #3  AnnotatedMixin<boost::recursive_mutex>::lock (this=<optimized out>) at ./sync.h:59
    #4  boost::unique_lock<CCriticalSection>::lock (this=0x7fff8192c5e8) at /usr/include/boost/thread/lock_types.hpp:346
    #5  0x000056128a02541e in CMutexLock<CCriticalSection>::Enter (this=0x56128acc6df0 <mempool+56>, nLine=602, pszName=<optimized out>, pszFile=<optimized out>)
        at ./sync.h:123
    #6  CMutexLock<CCriticalSection>::CMutexLock (this=0x56128acc6df0 <mempool+56>, mutexIn=..., nLine=602, fTry=false, pszName=<optimized out>, 
        pszFile=<optimized out>) at ./sync.h:144
    #7  CTxMemPool::size (this=0x56128acc6db8 <mempool>) at ./txmempool.h:602
    #8  0x000056128a0240b9 in ClientModel::getMempoolSize (this=<optimized out>) at qt/clientmodel.cpp:130
    #9  ClientModel::updateTimer (this=0x56128b70d6e0) at qt/clientmodel.cpp:153
    #10 0x000056128a0ba739 in ClientModel::qt_static_metacall (_o=0x56128acc6df0 <mempool+56>, _c=128, _id=<optimized out>, _a=0x7ff6947c1f5c <__lll_lock_wait+28>)
        at qt/moc_clientmodel.cpp:140
    #11 0x00007ff6952f75e9 in QMetaObject::activate (sender=sender@entry=0x56128b71a310, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, 
        argv=argv@entry=0x0) at kernel/qobject.cpp:3740
    #12 0x00007ff6952f7f07 in QMetaObject::activate (sender=sender@entry=0x56128b71a310, m=m@entry=0x7ff695515760 <QTimer::staticMetaObject>, 
        local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0) at kernel/qobject.cpp:3602
    #13 0x00007ff695371780 in QTimer::timeout (this=this@entry=0x56128b71a310) at .moc/moc_qtimer.cpp:198
    #14 0x00007ff695303f78 in QTimer::timerEvent (this=0x56128b71a310, e=<optimized out>) at kernel/qtimer.cpp:254
    #15 0x00007ff6952f8453 in QObject::event (this=0x56128b71a310, e=<optimized out>) at kernel/qobject.cpp:1285
    #16 0x00007ff695c3ab8c in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x56128b71a310, e=0x7fff8192ca80) at kernel/qapplication.cpp:3799
    #17 0x00007ff695c42341 in QApplication::notify (this=0x7fff8192d6b0, receiver=0x56128b71a310, e=0x7fff8192ca80) at kernel/qapplication.cpp:3556
    #18 0x00007ff6952cb9e0 in QCoreApplication::notifyInternal2 (receiver=0x56128b71a310, event=event@entry=0x7fff8192ca80) at kernel/qcoreapplication.cpp:988
    #19 0x00007ff69531efee in QCoreApplication::sendEvent (event=0x7fff8192ca80, receiver=<optimized out>)
        at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
    #20 QTimerInfoList::activateTimers (this=0x56128b8c6940) at kernel/qtimerinfo_unix.cpp:644
    #21 0x00007ff69531f511 in timerSourceDispatch (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:182
    #22 0x00007ff69068f7f7 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
    #23 0x00007ff69068fa60 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
    #24 0x00007ff69068fb0c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
    #25 0x00007ff69532004f in QEventDispatcherGlib::processEvents (this=0x56128b8c6720, flags=...) at kernel/qeventdispatcher_glib.cpp:423
    #26 0x00007ff6952c99ca in QEventLoop::exec (this=this@entry=0x7fff8192ccd0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212
    #27 0x00007ff695e290e7 in QDialog::exec (this=0x7fff8192cd58) at dialogs/qdialog.cpp:552
    #28 0x000056128a016d55 in BitcoinGUI::message (this=0x56128b9167c0, title=..., message=..., style=<optimized out>, ret=0x7ff63e702e8b) at qt/bitcoingui.cpp:925
    #29 0x000056128a0b9403 in BitcoinGUI::qt_static_metacall (_o=0x56128b9167c0, _c=<optimized out>, _id=<optimized out>, _a=0x7ff63e702920)
        at qt/moc_bitcoingui.cpp:216
    #30 0x00007ff6952f8499 in QObject::event (this=this@entry=0x56128b9167c0, e=e@entry=0x7ff614534610) at kernel/qobject.cpp:1263
    #31 0x00007ff695c8246b in QWidget::event (this=this@entry=0x56128b9167c0, event=event@entry=0x7ff614534610) at kernel/qwidget.cpp:9225
    #32 0x00007ff695d8192b in QMainWindow::event (this=0x56128b9167c0, event=0x7ff614534610) at widgets/qmainwindow.cpp:1543
    #33 0x00007ff695c3ab8c in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x56128b9167c0, e=0x7ff614534610) at kernel/qapplication.cpp:3799
    #34 0x00007ff695c42341 in QApplication::notify (this=0x7fff8192d6b0, receiver=0x56128b9167c0, e=0x7ff614534610) at kernel/qapplication.cpp:3556
    #35 0x00007ff6952cb9e0 in QCoreApplication::notifyInternal2 (receiver=0x56128b9167c0, event=event@entry=0x7ff614534610) at kernel/qcoreapplication.cpp:988
    #36 0x00007ff6952ce16d in QCoreApplication::sendEvent (event=0x7ff614534610, receiver=<optimized out>)
        at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
    #37 QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x56128b821ce0) at kernel/qcoreapplication.cpp:1649
    #38 0x00007ff6952ce5d8 in QCoreApplication::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1503
    #39 0x00007ff69531fc43 in postEventSourceDispatch (s=0x56128b8c67f0) at kernel/qeventdispatcher_glib.cpp:276
    #40 0x00007ff69068f7f7 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
    #41 0x00007ff69068fa60 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
    #42 0x00007ff69068fb0c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
    #43 0x00007ff69532004f in QEventDispatcherGlib::processEvents (this=0x56128b8c6720, flags=...) at kernel/qeventdispatcher_glib.cpp:423
    #44 0x00007ff6952c99ca in QEventLoop::exec (this=this@entry=0x7fff8192d4a0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212
    #45 0x00007ff6952d213c in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1261
    #46 0x0000561289ffbb19 in main (argc=<optimized out>, argv=<optimized out>) at qt/bitcoin.cpp:714
    (gdb) 

I suppose it's possible that this is corruption in something other than the chainstate db, that I only fixed the chainstate db by reindexing and still have old corruption in another db.

Either way, bitcoin-qt shouldn't hang like this. It's not responding to requests to "bitcoin-cli stop" or any other RPC.
{
    std::unique_ptr<CDBIterator> it(NewIterator());
    it->SeekToFirst();
    return !(it->Valid());
}
CDBIterator::~CDBIterator() { delete piter; }
bool CDBIterator::Valid() const { return piter->Valid(); }
void CDBIterator::SeekToFirst() { piter->SeekToFirst(); }
void CDBIterator::Next() { piter->Next(); }
namespace dbwrapper_private {
void HandleError(const leveldb::Status& status)
{
    if (status.ok())
        return;
    LogPrintf("%s\n", status.ToString());
    if (status.IsCorruption())
        throw dbwrapper_error("Database corrupted");
    if (status.IsIOError())
        throw dbwrapper_error("Database I/O error");
    if (status.IsNotFound())
        throw dbwrapper_error("Database entry missing");
    throw dbwrapper_error("Unknown database error");
}
const std::vector<unsigned char>& GetObfuscateKey(const CDBWrapper &w)
{
    return w.obfuscate_key;
}
}