Ticket #12 (closed: fixed)

Opened 3 years ago

Last modified 2 years ago

crash after some time, ed2k

Reported by: Rican Assigned to: madcat
Priority: normal Milestone: 0.2
Component: mod_ed2k Version: 0.1.1
Severity: major Keywords:
Cc:

Description

i was trying to reproduce another bug but this time i got this (never happened before):

Ooops...
HydraNode has performed an illegal operation and has been shut down.
Call trace:
 [0] /opt/hydranode/bin/hydranode(_Z12do_backtracev+0x23) [0x811a6d3]
 [1] /opt/hydranode/bin/hydranode(_Z12on_terminatev+0x77) [0x811a8a7]
 [2] /usr/lib/libstdc++.so.6 [0xb7f500f4]
 [3] /usr/lib/libstdc++.so.6 [0xb7f50131]
 [4] /usr/lib/libstdc++.so.6 [0xb7f502b1]
 [5] ./libed2k.so(_ZN10ServerList9onUdpDataEP9UDPSocket11SocketEvent+0x17a) [0xb7ce5f0a]
 [6] ./libed2k.so(_ZN5boost6detail8function26void_function_obj_invoker2INS_3_bi6
bind_tIvNS_4_mfi3mf2Iv10ServerListP9UDPSocket11SocketEventEENS3_5list3INS3_5valu
eIPS7_EENS_3argILi1EEENSG_ILi2EEEEEEEvS9_SA_E6invokeENS1_11any_pointerES9_SA_+0x
4c) [0xb7cefddc]
 [7] /opt/hydranode/bin/hydranode(_ZNK5boost9function2IvP9UDPSocket11SocketEvent


SaIvEEclES2_S3_+0xc5) [0x81d2625]
 [8] /opt/hydranode/bin/hydranode(_ZN5boostppINS_7signals6detail18slot_call_iter
atorINS2_11call_bound2IvE6callerIP9UDPSocket11SocketEventNS_8functionIFvS8_S9_ES
aIvEEEEENS2_23named_slot_map_iteratorEEENS2_8unusableENS_25single_pass_traversal
_tagERKSH_iEENS_6detail24postfix_increment_resultIT_T0_T2_T1_E4typeERNS_15iterat
or_facadeISN_SO_SQ_SP_T3_EEi+0x12e) [0x81d2b9e]
 [9] /opt/hydranode/bin/hydranode(_ZN5boost7signal2IvP9UDPSocket11SocketEventNS_
10last_valueIvEEiSt4lessIiENS_8functionIFvS2_S3_ESaIvEEEEclES2_S3_+0x67b) [0x81d
345b]
 [10] /opt/hydranode/bin/hydranode(_ZN10EventTableIP9UDPSocket11SocketEventE12ha
ndleEventsEv+0x795) [0x81d4045]
 [11] /opt/hydranode/bin/hydranode(_ZN9EventMain13handlePendingEv+0x2b) [0x80b2e
6b]
 [12] /opt/hydranode/bin/hydranode(_ZN9HydraNode8mainLoopEv+0x3a) [0x80f3faa]
 [13] /opt/hydranode/bin/hydranode(_ZN9HydraNode3runEiPPc+0x58) [0x80fe108]
 [14] /opt/hydranode/bin/hydranode(main+0xd8) [0x811a6a8]
 [15] /lib/libc.so.6(__libc_start_main+0xb9) [0xb7d79469]
 [16] /opt/hydranode/bin/hydranode(__gxx_personality_v0+0xb1) [0x80a6671]

Attempting to retrieve last log messages:

[CUT...]
 [9] [Statistics] Sources: 1527 | Queued: 1072 | Up:  11.68 KB/s | Down:   6.38
KB/s

Program received signal SIGABRT, Aborted.
[Switching to Thread 16384 (LWP 228)]
0xb7d8cef1 in kill () from /lib/libc.so.6

gdb:

(gdb) backtrace full
#0  0xb7d8cef1 in kill () from /lib/libc.so.6
No symbol table info available.
#1  0xb7f96bb1 in pthread_kill () from /lib/libpthread.so.0
No symbol table info available.
#2  0xb7f96f2b in raise () from /lib/libpthread.so.0
No symbol table info available.
#3  0xb7d8cb24 in raise () from /lib/libc.so.6
No symbol table info available.
#4  0xb7d8e3fd in abort () from /lib/libc.so.6
No symbol table info available.
#5  0xb7f500f9 in __cxa_call_unexpected () from /usr/lib/libstdc++.so.6
No symbol table info available.
#6  0xb7f50131 in std::terminate () from /usr/lib/libstdc++.so.6
No symbol table info available.
#7  0xb7f502b1 in __cxa_throw () from /usr/lib/libstdc++.so.6
No symbol table info available.
#8  0xb7ce5f0a in ServerList::onUdpData () from ./libed2k.so
No symbol table info available.
#9  0xb7cefddc in boost::detail::function::void_function_obj_invoker2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, ServerList, UDPSocket*, SocketEvent>, boost::_bi::list3<boost::_bi::value<ServerList*>, boost::arg<1>, boost::arg<2> > >, void, UDPSocket*, SocketEvent>::invoke () from ./libed2k.so
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#10 0x081d2625 in boost::function2<void, UDPSocket*, SocketEvent, std::allocator<void> >::operator() ()
No symbol table info available.
#11 0x081d2b9e in boost::operator++<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound2<void>::caller<UDPSocket*, SocketEvent, boost::function<void ()(UDPSocket*, SocketEvent), std::allocator<void> > >, boost::signals::detail::named_slot_map_iterator>, boost::signals::detail::unusable, boost::single_pass_traversal_tag, boost::signals::detail::unusable const&, int> ()
No symbol table info available.
#12 0x081d345b in boost::signal2<void, UDPSocket*, SocketEvent, boost::last_value<void>, int, std::less<int>, boost::function<void ()(UDPSocket*, SocketEvent), std::allocator<void> > >::operator() ()
No symbol table info available.
#13 0x081d4045 in EventTable<UDPSocket*, SocketEvent>::handleEvents ()
No symbol table info available.
#14 0x080b2e6b in EventMain::handlePending ()
No symbol table info available.
#15 0x080f3faa in HydraNode::mainLoop ()
No symbol table info available.
#16 0x080fe108 in HydraNode::run ()
No symbol table info available.
#17 0x0811a6a8 in main ()
No symbol table info available.
(gdb)

Slackware 10.1, self compiled hydranode and boost libraries. Downloading only one big file, connected to Razorback 2

Change History

06/10/05 10:08:12 changed by madcat

  • milestone set to 0.2.

Thank you, I found the issue (ServerList::UDPSocket method exception handler only handles SocketError? exceptions, but not others). Will be fixed once I get back.

Madcat.

07/20/05 06:03:00 changed by madcat

  • status changed from new to closed.
  • resolution set to fixed.

Fixed in [1541]