After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 310461 - Exchange connector crashed while loading calendar
Exchange connector crashed while loading calendar
Status: RESOLVED FIXED
Product: Evolution Exchange
Classification: Deprecated
Component: Connector
2.3.x
Other Linux
: Normal major
: 2.3
Assigned To: Sarfraaz Ahmed
Ximian Connector QA
Depends on:
Blocks:
 
 
Reported: 2005-07-15 09:09 UTC by Poornima
Modified: 2005-08-25 18:14 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Poornima 2005-07-15 09:09:52 UTC
Restarted evolution for some random crash if exchange storage crash.
Entyer password popup came up , after soem time exchange strage crashed. Attached 

Traces in terminal where exchange storage is launched

/opt/gnome/libexec/evolution/2.4/evolution-exchange-storage
Evolution Exchange Storage up and running
E2K_DEBUG=4
folder type is : noselect
folder type is : noselect
folder type is : calendar
folder type is : calendar
folder type is : contacts
folder type is : mail
folder type is : mail
folder type is : mail
folder type is : mail
folder type is : mail
folder type is : mail
folder type is : mail
folder type is : mail
folder type is : tasks
folder type is : calendar
folder type is : noselect
folder type is : noselect
folder type is : calendar
folder type is : calendar
folder type is : contacts
folder type is : mail
folder type is : mail
folder type is : mail
folder type is : mail
folder type is : mail
folder type is : mail
folder type is : mail
folder type is : mail
folder type is : tasks
folder type is : calendar
cal = 0x82b9000
impl_GNOME_Evolution_Addressbook_BookFactory_getBook
 + file:///home/pnayak/.evolution/addressbook/local/system
cal = 0x82c0058
cal = 0x82c01e8
cal = 0x42500a38
cal = 0x82d61d0
cal = 0x42506830
cal = 0x82edc18

(evolution-exchange-storage:15183): libecal-CRITICAL **:
e_cal_component_get_dtstart: assertion `priv->icalcomp != NULL' failed

(evolution-exchange-storage:15183): libecal-CRITICAL **:
e_cal_component_get_dtend: assertion `priv->icalcomp != NULL' failed

(evolution-exchange-storage:15183): libecal-CRITICAL **:
e_cal_component_has_rdates: assertion `priv->icalcomp != NULL' failed

(evolution-exchange-storage:15183): libecal-CRITICAL **:
e_cal_component_has_rrules: assertion `priv->icalcomp != NULL' failed

(evolution-exchange-storage:15183): libecal-CRITICAL **:
e_cal_component_has_exdates: assertion `priv->icalcomp != NULL' failed

(evolution-exchange-storage:15183): libecal-CRITICAL **:
e_cal_component_has_exrules: assertion `priv->icalcomp != NULL' failed
*** glibc detected *** double free or corruption (out): 0x42061de8 ***
                                                             


stack traces


Thread 2 (Thread 1107700656 (LWP 15211))

  • #0 ??
  • #1 ??
  • #2 ??
  • #3 ??
  • #4 __lll_mutex_lock_wait
    from /lib/tls/libc.so.6
  • #5 _L_mutex_lock_108
    from /lib/tls/libc.so.6
  • #6 ??
  • #7 ??
    from /lib/tls/libc.so.6
  • #8 fork_handler_pool
    from /lib/tls/libc.so.6
  • #9 fork_handler_pool
    from /lib/tls/libc.so.6
  • #10 ??
  • #11 fork
    from /lib/tls/libc.so.6
  • #12 fork
    from /lib/tls/libc.so.6
  • #13 fork
    from /lib/tls/libpthread.so.0
  • #14 gnome_init_with_popt_table
    from /opt/gnome/lib/libgnomeui-2.so.0
  • #15 <signal handler called>
  • #16 ??
  • #17 ??
  • #18 ??
  • #19 ??
  • #20 raise
    from /lib/tls/libc.so.6
  • #21 abort
    from /lib/tls/libc.so.6
  • #22 __libc_message
    from /lib/tls/libc.so.6
  • #23 malloc_printerr
    from /lib/tls/libc.so.6
  • #24 free
    from /lib/tls/libc.so.6
  • #25 g_free
    from /opt/gnome/lib/libglib-2.0.so.0
  • #26 e_cal_component_free_datetime
    at e-cal-component.c line 4673
  • #27 e_cal_recur_generate_instances_of_rule
  • #28 e_cal_recur_generate_instances
    at e-cal-recur.c line 655
  • #29 func_occur_in_time_range
    at e-cal-backend-sexp.c line 386
  • #30 e_sexp_term_eval
    at e-sexp.c line 710
  • #31 term_eval_and
    at e-sexp.c line 255
  • #32 e_sexp_term_eval
    at e-sexp.c line 700
  • #33 e_sexp_eval
    at e-sexp.c line 1304
  • #34 e_cal_backend_sexp_match_comp
    at e-cal-backend-sexp.c line 1045
  • #35 match_object_sexp
    at e-cal-backend-exchange.c line 789
  • #36 g_hash_table_foreach
    from /opt/gnome/lib/libglib-2.0.so.0
  • #37 get_object_list
  • #38 e_cal_backend_sync_get_object_list
  • #39 _e_cal_backend_get_object_list
  • #40 e_cal_backend_get_object_list
  • #41 impl_Cal_getObjectList
  • #42 _ORBIT_skel_small_GNOME_Evolution_Calendar_Cal_getObjectList
  • #43 IOP_profile_dump
    from /opt/gnome/lib/libORBit-2.so.0
  • #44 ORBit_OAObject_invoke
    from /opt/gnome/lib/libORBit-2.so.0
  • #45 ORBit_small_invoke_adaptor
    from /opt/gnome/lib/libORBit-2.so.0
  • #46 ORBit_recv_buffer_return_sys_exception
    from /opt/gnome/lib/libORBit-2.so.0
  • #47 ORBit_recv_buffer_return_sys_exception
    from /opt/gnome/lib/libORBit-2.so.0
  • #48 giop_thread_queue_process
    from /opt/gnome/lib/libORBit-2.so.0
  • #49 giop_init
    from /opt/gnome/lib/libORBit-2.so.0
  • #50 g_thread_pool_push
    from /opt/gnome/lib/libglib-2.0.so.0
  • #51 g_thread_create_full
    from /opt/gnome/lib/libglib-2.0.so.0
  • #52 start_thread
    from /lib/tls/libpthread.so.0
  • #53 clone
    from /lib/tls/libc.so.6

Comment 1 Poornima 2005-07-15 11:18:09 UTC
This crash occurs even while creating meeting, attaching traces again


Thread 2 (Thread 1105091504 (LWP 20172))

  • #0 ??
  • #1 ??
  • #2 ??
  • #3 ??
  • #4 __lll_mutex_lock_wait
    from /lib/tls/libc.so.6
  • #5 _L_mutex_lock_108
    from /lib/tls/libc.so.6
  • #6 ??
  • #7 ??
    from /lib/tls/libc.so.6
  • #8 fork_handler_pool
    from /lib/tls/libc.so.6
  • #9 fork_handler_pool
    from /lib/tls/libc.so.6
  • #10 ??
  • #11 fork
    from /lib/tls/libc.so.6
  • #12 fork
    from /lib/tls/libc.so.6
  • #13 fork
    from /lib/tls/libpthread.so.0
  • #14 gnome_init_with_popt_table
    from /opt/gnome/lib/libgnomeui-2.so.0
  • #15 <signal handler called>
  • #16 ??
  • #17 ??
  • #18 ??
  • #19 ??
  • #20 raise
    from /lib/tls/libc.so.6
  • #21 abort
    from /lib/tls/libc.so.6
  • #22 __libc_message
    from /lib/tls/libc.so.6
  • #23 malloc_printerr
    from /lib/tls/libc.so.6
  • #24 free
    from /lib/tls/libc.so.6
  • #25 g_free
    from /opt/gnome/lib/libglib-2.0.so.0
  • #26 e_cal_component_free_datetime
    at e-cal-component.c line 4674
  • #27 e_cal_recur_generate_instances_of_rule
  • #28 e_cal_recur_generate_instances
    at e-cal-recur.c line 655
  • #29 func_occur_in_time_range
    at e-cal-backend-sexp.c line 386
  • #30 e_sexp_term_eval
    at e-sexp.c line 710
  • #31 term_eval_and
    at e-sexp.c line 255
  • #32 e_sexp_term_eval
    at e-sexp.c line 700
  • #33 e_sexp_eval
    at e-sexp.c line 1304
  • #34 e_cal_backend_sexp_match_comp
    at e-cal-backend-sexp.c line 1045
  • #35 e_cal_backend_sexp_match_object
    at e-cal-backend-sexp.c line 1081
  • #36 e_data_cal_view_object_matches
    at e-data-cal-view.c line 509
  • #37 e_cal_backend_notify_object_created
    at e-cal-backend.c line 1121
  • #38 e_data_cal_notify_object_created
    at e-data-cal.c line 911
  • #39 _e_cal_backend_create_object
    at e-cal-backend-sync.c line 685
  • #40 e_cal_backend_create_object
    at e-cal-backend.c line 891
  • #41 impl_Cal_createObject
    at e-data-cal.c line 324
  • #42 _ORBIT_skel_small_GNOME_Evolution_Calendar_Cal_createObject
    at Evolution-DataServer-Calendar-common.c line 112
  • #43 IOP_profile_dump
    from /opt/gnome/lib/libORBit-2.so.0
  • #44 ORBit_OAObject_invoke
    from /opt/gnome/lib/libORBit-2.so.0
  • #45 ORBit_small_invoke_adaptor
    from /opt/gnome/lib/libORBit-2.so.0
  • #46 ORBit_recv_buffer_return_sys_exception
    from /opt/gnome/lib/libORBit-2.so.0
  • #47 ORBit_recv_buffer_return_sys_exception
  • #48 giop_thread_queue_process
    from /opt/gnome/lib/libORBit-2.so.0
  • #49 giop_init
    from /opt/gnome/lib/libORBit-2.so.0
  • #50 g_thread_pool_push
    from /opt/gnome/lib/libglib-2.0.so.0
  • #51 g_thread_create_full
    from /opt/gnome/lib/libglib-2.0.so.0
  • #52 start_thread
    from /lib/tls/libpthread.so.0
  • #53 clone
    from /lib/tls/libc.so.6

Comment 2 Sarfraaz Ahmed 2005-07-25 13:11:37 UTC
Run valgrind for this.
Comment 3 Veerapuram Varadhan 2005-08-18 13:17:26 UTC
Its seems the above stuff got fixed but I am getting a different crash w.r.t
exchange callendars.  Running valgrind suggested an "invalid read of 4 bytes"
Valgrind log is as follows:

==32248==
==32248== Invalid read of size 4
==32248==    at 0x1B99A628: icalattach_unref (icalattach.c:102)
==32248==    by 0x1B9AC881: icalvalue_free (icalvalue.c:591)
==32248==    by 0x1B9A2A7E: icalproperty_free (icalproperty.c:234)
==32248==    by 0x1B99E335: icalcomponent_free (icalcomponent.c:240)
==32248==    by 0x1B99E370: icalcomponent_free (icalcomponent.c:249)
==32248==    by 0x807421E: add_ical (e-cal-backend-exchange-calendar.c:338)
==32248==    by 0x8074793: open_calendar (e-cal-backend-exchange-calendar.c:508)
==32248==    by 0x1B93B3C1: e_cal_backend_sync_open (e-cal-backend-sync.c:186)
==32248==    by 0x1B93B480: _e_cal_backend_open (e-cal-backend-sync.c:662)
==32248==    by 0x1B9354BF: e_cal_backend_open (e-cal-backend.c:616)
==32248==    by 0x1B93E329: impl_Cal_open (e-data-cal.c:81)
==32248==    by 0x1B930249: _ORBIT_skel_small_GNOME_Evolution_Calendar_Cal_open
(Evolution-DataServer-Calendar-common.c:44)
==32248==  Address 0x1D3AD400 is 0 bytes inside a block of size 20 free'd
==32248==    at 0x1B9057CD: free (in /usr/lib/valgrind/vgpreload_memcheck.so)
==32248==    by 0x1B99A668: icalattach_unref (icalattach.c:117)
==32248==    by 0x1B981DE5: e_cal_component_set_attachment_list
(e-cal-component.c:1524)
==32248==    by 0x80740AB: add_ical (e-cal-backend-exchange-calendar.c:309)
==32248==    by 0x8074793: open_calendar (e-cal-backend-exchange-calendar.c:508)
==32248==    by 0x1B93B3C1: e_cal_backend_sync_open (e-cal-backend-sync.c:186)
==32248==    by 0x1B93B480: _e_cal_backend_open (e-cal-backend-sync.c:662)
==32248==    by 0x1B9354BF: e_cal_backend_open (e-cal-backend.c:616)
==32248==    by 0x1B93E329: impl_Cal_open (e-data-cal.c:81)
==32248==    by 0x1B930249: _ORBIT_skel_small_GNOME_Evolution_Calendar_Cal_open
(Evolution-DataServer-Calendar-common.c:44)
==32248==    by 0x1CC9DD56: (within /opt/gnome/lib/libORBit-2.so.0.0.0)
==32248==    by 0x1CCA4054: ORBit_OAObject_invoke (in
/opt/gnome/lib/libORBit-2.so.0.0.0)

Comment 4 Sarfraaz Ahmed 2005-08-24 17:53:18 UTC
http://lists.ximian.com/pipermail/evolution-patches/2005-August/011966.html

Patch pending review.
Comment 5 Sarfraaz Ahmed 2005-08-25 18:14:47 UTC
Varadhan's patch has been approved and committed to HEAD.