dashpay / dash

Dash - Reinventing Cryptocurrency
https://www.dash.org
MIT License
1.49k stars 1.2k forks source link

dashd crash when sync blockchain #453

Closed poiuty closed 9 years ago

poiuty commented 9 years ago

No log in debug.log Make gdb bt

#0  0x00007fa4a20ac107 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#1  0x00007fa4a20ad4e8 in __GI_abort () at abort.c:89
#2  0x00007fa4a20a5226 in __assert_fail_base (fmt=0x7fa4a21dbce8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n",
    assertion=assertion@entry=0x70a6e8 "pqueue->nTotal == pqueue->nIdle", file=file@entry=0x70c058 "checkqueue.h",
    line=line@entry=169,
    function=function@entry=0x7122c0 <CCheckQueueControl<CScriptCheck>::CCheckQueueControl(CCheckQueue<CScriptCheck>*)::__PRETTY_FUNCTION__> "CCheckQueueControl<T>::CCheckQueueControl(CCheckQueue<T>*) [with T = CScriptCheck]") at assert.c:92
#3  0x00007fa4a20a52d2 in __GI___assert_fail (assertion=0x70a6e8 "pqueue->nTotal == pqueue->nIdle", file=0x70c058 "checkqueue.h",
    line=169,
    function=0x7122c0 <CCheckQueueControl<CScriptCheck>::CCheckQueueControl(CCheckQueue<CScriptCheck>*)::__PRETTY_FUNCTION__> "CCheckQueueControl<T>::CCheckQueueControl(CCheckQueue<T>*) [with T = CScriptCheck]") at assert.c:101
#4  0x000000000047b132 in CCheckQueueControl (pqueueIn=0xaf2b00 <scriptcheckqueue>, this=<synthetic pointer>) at checkqueue.h:169
#5  ConnectBlock (block=..., state=..., pindex=pindex@entry=0x7fa449a552c0, view=..., fJustCheck=fJustCheck@entry=false)
    at main.cpp:2223
#6  0x000000000047f026 in ConnectTip (pindexNew=0x7fa449a552c0, state=...) at main.cpp:2443
#7  ActivateBestChain (state=...) at main.cpp:2633
#8  0x0000000000480428 in AddToBlockIndex (block=..., state=..., pos=...) at main.cpp:2696
#9  0x00000000004807a9 in AcceptBlock (block=..., state=..., dbp=dbp@entry=0x0) at main.cpp:3087
#10 0x0000000000481a33 in ProcessBlock (state=..., pfrom=pfrom@entry=0x7fa474004ee0, pblock=pblock@entry=0x7fa47d7f94e0,
    dbp=dbp@entry=0x0) at main.cpp:3216
#11 0x00000000004872f8 in ProcessMessage (pfrom=pfrom@entry=0x7fa474004ee0, strCommand="block", vRecv=...) at main.cpp:4620
#12 0x00000000004893de in ProcessMessages (pfrom=0x7fa474004ee0) at main.cpp:4934
#13 0x00000000004ed341 in operator() (a0=<optimized out>, this=<optimized out>)
    at /usr/include/boost/function/function_template.hpp:767
#14 m_invoke (connectionBody=..., this=<optimized out>) at /usr/include/boost/signals2/detail/signal_template.hpp:368
#15 operator() (connectionBody=..., this=<optimized out>) at /usr/include/boost/signals2/detail/signal_template.hpp:345
#16 dereference (this=0x7fa47d7f9be0) at /usr/include/boost/signals2/detail/slot_call_iterator.hpp:82
#17 dereference<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal1_impl<bool, CNode*, boost::signals2::optional_last_value<bool>, int, std::less<int>, boost::function<bool(CNode*)>, boost::function<bool(const boost::signals2::connection&, CNode*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot1<bool, CNode*, boost::function<bool(CNode*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot1<bool, CNode*, boost::function<bool(CNode*)> >, boost::signals2::mutex> > > (f=...)
    at /usr/include/boost/iterator/iterator_facade.hpp:514
#18 operator* (this=0x7fa47d7f9be0) at /usr/include/boost/iterator/iterator_facade.hpp:639
#19 operator()<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal1_impl<bool, CNode*, boost::signals2::optional_last_value<bool>, int, std::less<int>, boost::function<bool(CNode*)>, boost::function<bool(const boost::signals2::connection&, CNode*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot1<bool, CNode*, boost::function<bool(CNode*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot1<bool, CNode*, boost::function<bool(CNode*)> >, boost::signals2::mutex> > > (last=...,
    first=..., this=<optimized out>) at /usr/include/boost/signals2/optional_last_value.hpp:34
#20 operator()<boost::signals2::optional_last_value<bool>, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::signal1_impl<bool, CNode*, boost::signals2::optional_last_value<bool>, int, std::less<int>, boost::function<bool(CNode*)>, boost::function<bool(const boost::signals2::connection&, CNode*)>, boost::signals2::mutex>::slot_invoker, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot1<bool, CNode*, boost::function<bool(CNode*)> >, boost::signals2::mutex> > >, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int> >, boost::signals2::slot1<bool, CNode*, boost::function<bool(CNode*)> >, boost::signals2::mutex> > > (this=<optimized out>, last=..., first=..., combiner=...)
    at /usr/include/boost/signals2/detail/result_type_wrapper.hpp:53
#21 boost::signals2::detail::signal1_impl<bool, CNode*, boost::signals2::optional_last_value<bool>, int, std::less<int>, boost::function<bool (CNode*)>, boost::function<bool (boost::signals2::connection const&, CNode*)>, boost::signals2::mutex>::operator()(CNode*) (
    this=<optimized out>, arg1=arg1@entry=0x7fa474004ee0) at /usr/include/boost/signals2/detail/signal_template.hpp:246
#22 0x00000000004daafd in operator() (arg1=0x7fa474004ee0, this=0xaf3618 <g_signals+24>)
    at /usr/include/boost/signals2/detail/signal_template.hpp:695
#23 ThreadMessageHandler () at net.cpp:1536
#24 0x00000000004e0949 in TraceThread<void (*)()> (name=0x72eab9 "msghand", func=0x4da950 <ThreadMessageHandler()>) at util.h:577
#25 0x00007fa4a3ab8aea in ?? () from /usr/lib/x86_64-linux-gnu/libboost_thread.so.1.55.0
#26 0x00007fa4a24280a4 in start_thread (arg=0x7fa47d7fa700) at pthread_create.c:309
#27 0x00007fa4a215d04d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111
poiuty commented 9 years ago

First bt => compiled version (from src) And this bt => binary file from site.

#0  0x00007f2e1709c107 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#1  0x00007f2e1709d4e8 in __GI_abort () at abort.c:89
#2  0x00007f2e17095226 in __assert_fail_base (fmt=0x7f2e171cbce8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n",
    assertion=assertion@entry=0x979948 "pqueue->nTotal == pqueue->nIdle", file=file@entry=0x97b15c "checkqueue.h",
    line=line@entry=169,
    function=function@entry=0x990d40 "CCheckQueueControl<T>::CCheckQueueControl(CCheckQueue<T>*) [with T = CScriptCheck]")
    at assert.c:92
#3  0x00007f2e170952d2 in __GI___assert_fail (assertion=0x979948 "pqueue->nTotal == pqueue->nIdle", file=0x97b15c "checkqueue.h",
    line=169, function=0x990d40 "CCheckQueueControl<T>::CCheckQueueControl(CCheckQueue<T>*) [with T = CScriptCheck]") at assert.c:101
#4  0x000000000046e85b in ?? ()
#5  0x0000000000470e78 in ?? ()
#6  0x0000000000472123 in ?? ()
#7  0x0000000000472a67 in ?? ()
#8  0x00000000004743a0 in ?? ()
#9  0x000000000047a3b8 in ?? ()
#10 0x00000000004ec61d in ?? ()
#11 0x00000000004d61e6 in ?? ()
#12 0x00000000004e32c8 in ?? ()
#13 0x000000000072187a in ?? ()
#14 0x00007f2e174180a4 in start_thread (arg=0x7f2e09ffb700) at pthread_create.c:309
#15 0x00007f2e1714d04d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111
poiuty commented 9 years ago

https://dl.dropboxusercontent.com/u/59491914/DASH/cores.zip

UdjinM6 commented 9 years ago

This should help https://github.com/bitcoin/bitcoin/commit/cf008ac8c3c5d582562d88ad89020daef3e64dcb

poiuty commented 9 years ago

It seems working. 8 wallets sync full blockchain without crash.