[Evolution-hackers] hang of evo when access ldap AB



hi, toshok

I often meet hang of evolution 1.4.5 when query info from ldap server.

Normally if I click a simple string(one time), like as "leon", i can access some cards from ldap server,
but if I click "leons" sevral times quickly, i will find the evo freezed now!!!
(btw, searching "leons" should not receive any AB info too)


when evo freezed, I print the two stacks in evolution and wombat process(details is in the last part of this email).

I get the simplfied calling relationsship below:


                evoution                                                      wombat

  (time-out )
  e_book_listener_check_queue()
               |
               |signal emit                                                  <<<< hang >>>>
               |
               V
   e_book_check_listener_queue()                                       bonobo_object_release_unref()
               |                                                                    ^
               |                                                                    |
               V                                                                    |
   e_book_do_response_get_view()                                       pas_book_view_dispose()
               |                                                                    ^
               |                                                                    |
               V                                                                    |
   bonobo_object_release_unref()                                        pas_book_view_dispose()
               |                                                                    ^
               |                                                                    |
                ---------------------------------------------------------------------



From the calling map above, I guess the evo hang because wombat has been hanged.

Further more, pas_book_view_dispose() 's calling "bonobo_object_release_unref (book_view->priv->listener, NULL);"
might be the direct source of this hang.

If I comment out that line, there exist no hang at all.

I feel suprised why commenting out the line can fix this hang, and what is the exact source of this hang.

can you give some suggesions or comments?

thx


leon





evoution side

#0  0xffffe002 in ?? ()
#1  0x4125e1b7 in g_main_context_poll (context=0x0, timeout=-1, priority=2147483647, fds=0x82f8a08, n_fds=10) at main.c:2698
#2  0x4125d6c1 in g_main_context_iterate (context=0x80c93e8, block=1, dispatch=1, self=0x80b6e00) at gmain.c:2375
#3  0x4125d940 in g_main_context_iteration (context=0x80c93e8, may_block=1) at gmain.c:2439
#4  0x408242a9 in link_main_iteration (block_for_reply=1) at linc.c:230
#5  0x40844195 in giop_recv_buffer_get (ent=0xbfffcf70) at giop-recv-buffer.c:711
#6  0x408485ae in ORBit_small_invoke_stub (obj=0x83375e8, m_data=0x4081d0c0, ret=0x0, args=0x0, ctx=0x0, ev=0xbfffd0d0)
    at orbit-small.c:642
#7 0x4084836c in ORBit_small_invoke_stub_n (object=0x83375e8, methods=0xa, index=2147483647, ret=0x0, args=0x0, ctx=0x0, ev=0xbfffd0d0) at orbit-small.c:571 #8 0x40859f5d in ORBit_c_stub_invoke (obj=0x83375e8, methods=0x80b0784, method_index=1, ret=0x0, args=0x0, ctx=0x0, ev=0xbfffd0d0, class_id=1, method_offset=8, skel_impl=0xbfffd0d0) at poa.c:2492
#9  0x40814b40 in Bonobo_Unknown_unref (_obj=0x83375e8, ev=0xbfffd0d0) at Bonobo_Unknown-stubs.c:23
#10 0x405acc50 in bonobo_object_release_unref (object=0x83375e8, opt_ev=0xbfffd0d0) at bonobo-object.c:568
-------------------------------------------------------------------------------------------------------
#11 0x41814a9f in e_book_do_response_get_view (book=0x83bdf88, resp=0x8317d30) at e-book.c:341
#12 0x41815095 in e_book_check_listener_queue (listener=0x83bde40, book=0x83bdf88) at e-book.c:554
-------------------------------------------------------------------------------------------------------
#13 0x4121d904 in g_cclosure_marshal_VOID__VOID (closure=0x83a82d8, return_value=0x0, n_param_values=1, param_values=0xfffffffc,invocation_hint=0xbfffd268, marshal_data=0x0) at gmarshal.c:77
#14 0x4120cb1a in g_closure_invoke (closure=0x83a82d8, return_value=0x0, n_param_values=1, param_values=0xbfffd360,
    invocation_hint=0xbfffd268) at gclosure.c:437
#15 0x4121d4de in signal_emit_unlocked_R (node=0x830b700, detail=0, instance=0x83bde40, emission_return=0x0,
    instance_and_params=0xbfffd360) at gsignal.c:2822
#16 0x4121c60e in g_signal_emit_valist (instance=0x83bde40, signal_id=423, detail=0,
    var_args=0xxssdfasdfasdfasdfasdf ... )  at gsignal.c:2554
#17 0x4121c807 in g_signal_emit (instance=0x83bde40, signal_id=423, detail=0) at gsignal.c:2612
-------------------------------------------------------------------------------------------------------
   #18 0x4181165b in e_book_listener_check_queue (listener=0x83bde40) at e-book-listener.c:105
-------------------------------------------------------------------------------------------------------
#19 0x4125eb0f in g_timeout_dispatch (source=0x830df38, callback=0, user_data=0x83bde40) at gmain.c:3124
#20 0x4125c502 in g_main_dispatch (context=0x80c8ef8) at gmain.c:1751
#21 0x4125d431 in g_main_context_dispatch (context=0x80c8ef8) at gmain.c:2299
#22 0x4125d737 in g_main_context_iterate (context=0x80c8ef8, block=1, dispatch=1, self=0x80b6e00) at gmain.c:2380
#23 0x4125dd96 in g_main_loop_run (loop=0x810e878) at gmain.c:2600
#24 0x405a8505 in bonobo_main () at bonobo-main.c:294
#25 0x0809b432 in main (argc=1, argv=0xbfffd794) at main.c:637
#26 0x42015574 in __libc_start_main () from /lib/tls/libc.so.6





wombat side !!!
n ?? ()
#1  0x41263e11 in ORBit_POA_handle_request (poa=0x80f5e70, recv_buffer=0x814f358, objkey=0x814f370) at poa.c:1440
#2  0x41266ee7 in ORBit_handle_request (orb=0x80f5dc8, recv_buffer=0x814f358) at orbit-adaptor.c:191
#3  0x41250ebf in giop_connection_handle_input (lcnx=0x8122508) at giop-recv-buffer.c:1275
#4  0x41231f30 in link_connection_io_handler (gioc=0x0, condition=G_IO_IN, data=0x8122508) at linc-connection.c:1241
#5 0x41233888 in link_source_dispatch (source=0x8122388, callback=0x41231df4 <link_connection_io_handler>, user_data=0x8122508) at linc-source.c:54
#6  0x41317502 in g_main_dispatch (context=0x80f3980) at gmain.c:1751
#7  0x41318431 in g_main_context_dispatch (context=0x80f3980) at gmain.c:2299
#8  0x41318737 in g_main_context_iterate (context=0x80f3980, block=1, dispatch=1, self=0x80e4510) at gmain.c:2380
#9  0x41318940 in g_main_context_iteration (context=0x80f3980, may_block=1) at gmain.c:2439
#10 0x412302a9 in link_main_iteration (block_for_reply=1) at linc.c:230
#11 0x41250195 in giop_recv_buffer_get (ent=0xbfffd760) at giop-recv-buffer.c:711
#12 0x412545ae in ORBit_small_invoke_stub (obj=0x814d7a0, m_data=0x412290c0, ret=0x0, args=0x0, ctx=0x0, ev=0xbfffd860)
    at orbit-small.c:642
#13 0x4125436c in ORBit_small_invoke_stub_n (object=0x814d7a0, methods=0x0, index=3, ret=0x0, args=0x0, ctx=0x0, ev=0xbfffd860) at orbit-small.c:571 #14 0x41265f5d in ORBit_c_stub_invoke (obj=0x814d7a0, methods=0x80e3994, method_index=1, ret=0x0, args=0x0, ctx=0x0, ev=0xbfffd860, class_id=2, method_offset=8, skel_impl=0xbfffd860) at poa.c:2492
#15 0x41220b40 in Bonobo_Unknown_unref (_obj=0x814d7a0, ev=0xbfffd860) at Bonobo_Unknown-stubs.c:23
#16 0x40ed3c50 in bonobo_object_release_unref (object=0x814d7a0, opt_ev=0x0) at bonobo-object.c:568
-------------------------------------------------------------------------------------------------------
#17 0x080afbc6 in pas_book_view_dispose (object=0x814d770) at pas-book-view.c:238
-------------------------------------------------------------------------------------------------------
#18 0x412959e1 in g_object_last_unref (object=0x814d770) at gobject.c:429
#19 0x40ed33b8 in bonobo_object_finalize_servant (servant=0x814d784, ev=0xbfffd920) at bonobo-object.c:248
#20 0x41263128 in ORBit_POA_deactivate_object (poa=0x80f5e70, pobj=0x8153418, do_etherealize=252
#21 0x4126401d in ORBit_POAObject_post_invoke (pobj=0x3) at poa.c:1633
#22 0x41263559 in ORBit_POAObject_handle_request (pobj=0x8153418, opname=0x814f32c "unref", ret=0x0, args=0x0, ctx=0x0,
    recv_buffer=0x814edc0, ev=0xbfffda60) at poa.c:1277
#23 0x41263988 in ORBit_POAObject_invoke_incoming_request (pobj=0x8153418, recv_buffer=0x814edc0, opt_ev=0xbfffda60) at poa.c:1312
#24 0x41263c9c in ORBit_POA_handle_request (poa=0x80f5e70, recv_buffer=0x814edc0, objkey=0x814edd8) at poa.c:1508
#25 0x41266ee7 in ORBit_handle_request (orb=0x80f5dc8, recv_buffer=0x814edc0) at orbit-adaptor.c:191
#26 0x41250ebf in giop_connection_handle_input (lcnx=0x8122508) at giop-recv-buffer.c:1275
#27 0x41231f30 in link_connection_io_handler (gioc=0x0, condition=G_IO_IN, data=0x8122508) at linc-connection.c:1241
#28 0x41233888 in link_source_dispatch (source=0x8122300, callback=0x41231df4 <link_connection_io_handler>, user_data=0x8122508) at linc-source.c:54
#29 0x41317502 in g_main_dispatch (context=0x80f3c90) at gmain.c:1751
#30 0x41318431 in g_main_context_dispatch (context=0x80f3c90) at gmain.c:2299
#31 0x41318737 in g_main_context_iterate (context=0x80f3c90, block=1, dispatch=1, self=0x80e4510) at gmain.c:2380
#32 0x41318d96 in g_main_loop_run (loop=0x8111828) at gmain.c:2600
#33 0x40ecf505 in bonobo_main () at bonobo-main.c:294
#34 0x0805d29e in main (argc=3, argv=0xbfffdcd4) at wombat.c:245
#35 0x42015574 in __libc_start_main () from /lib/tls/libc.so.6




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]