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 700253 - EDS backend initialization blocks
EDS backend initialization blocks
Status: RESOLVED FIXED
Product: folks
Classification: Platform
Component: e-d-s backend
git master
Other Linux
: Normal normal
: Unset
Assigned To: folks-maint
folks-maint
Depends on:
Blocks:
 
 
Reported: 2013-05-13 20:30 UTC by Lionel Landwerlin
Modified: 2013-05-13 22:34 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
backends: eds: make the personna store backend more 'async' (1.05 KB, patch)
2013-05-13 20:34 UTC, Lionel Landwerlin
committed Details | Review

Description Lionel Landwerlin 2013-05-13 20:30:13 UTC
I get gnome-contacts taking about 30 seconds to start.

Here is a backtrace of where the app blocks :

(gdb) bt
  • #0 poll
    at ../sysdeps/unix/syscall-template.S line 81
  • #1 g_main_context_poll
    at /tmp/buildd/glib2.0-2.36.1/./glib/gmain.c line 3995
  • #2 g_main_context_iterate
    at /tmp/buildd/glib2.0-2.36.1/./glib/gmain.c line 3696
  • #3 g_main_loop_run
    at /tmp/buildd/glib2.0-2.36.1/./glib/gmain.c line 3895
  • #4 e_async_closure_wait
    from /usr/lib/libedataserver-1.2.so.17
  • #5 ??
    from /usr/lib/libebook-1.2.so.14
  • #6 g_initable_new_valist
    at /tmp/buildd/glib2.0-2.36.1/./gio/ginitable.c line 231
  • #7 g_initable_new
    at /tmp/buildd/glib2.0-2.36.1/./gio/ginitable.c line 149
  • #8 edsf_persona_store_real_prepare_co
    at edsf-persona-store.c line 2939
  • #9 _folks_individual_aggregator_backend_persona_store_added_cb
    at individual-aggregator.c line 2848
  • #10 _folks_individual_aggregator_add_backend_co
    at individual-aggregator.c line 2438
  • #11 _folks_individual_aggregator_add_backend
    at individual-aggregator.c line 2363
  • #12 g_cclosure_marshal_VOID__OBJECTv
    at /tmp/buildd/glib2.0-2.36.1/./gobject/gmarshal.c line 1312
  • #13 _g_closure_invoke_va
    at /tmp/buildd/glib2.0-2.36.1/./gobject/gclosure.c line 840
  • #14 g_signal_emit_valist
    at /tmp/buildd/glib2.0-2.36.1/./gobject/gsignal.c line 3234
  • #15 g_signal_emit_by_name
    at /tmp/buildd/glib2.0-2.36.1/./gobject/gsignal.c line 3424
  • #16 _folks_backend_store_backend_load_if_needed_co
    at backend-store.c line 1573
  • #17 g_simple_async_result_complete
    at /tmp/buildd/glib2.0-2.36.1/./gio/gsimpleasyncresult.c line 777
  • #18 folks_backends_eds_backend_real_prepare_co
    at eds-backend.c line 602
  • #19 g_task_return_now
    at /tmp/buildd/glib2.0-2.36.1/./gio/gtask.c line 1105
  • #20 complete_in_idle_cb
    at /tmp/buildd/glib2.0-2.36.1/./gio/gtask.c line 1114
  • #21 g_main_dispatch
    at /tmp/buildd/glib2.0-2.36.1/./glib/gmain.c line 3054
  • #22 g_main_context_dispatch
    at /tmp/buildd/glib2.0-2.36.1/./glib/gmain.c line 3630
  • #23 g_main_context_iterate
    at /tmp/buildd/glib2.0-2.36.1/./glib/gmain.c line 3701
  • #24 g_main_context_iteration
    at /tmp/buildd/glib2.0-2.36.1/./glib/gmain.c line 3762
  • #25 g_application_run
    at /tmp/buildd/glib2.0-2.36.1/./gio/gapplication.c line 1623
  • #26 _vala_main
  • #27 __libc_start_main
    at libc-start.c line 260
  • #28 _start

Comment 1 Lionel Landwerlin 2013-05-13 20:34:01 UTC
Created attachment 244090 [details] [review]
backends: eds: make the personna store backend more 'async'
Comment 2 Travis Reitter 2013-05-13 22:34:43 UTC
Review of attachment 244090 [details] [review]:

Thanks, nice catch. I've merged it:

commit f1e24400a254e9d3f14a9660379f01ed9dc793bc
Author: Lionel Landwerlin <llandwerlin@gmail.com>
Date:   Mon May 13 21:22:02 2013 +0100

    backends: eds: make the personna store backend more 'async'
    
    Bug: https://bugzilla.gnome.org/show_bug.cgi?id=700253

 NEWS                                     | 2 +-
 backends/eds/lib/edsf-persona-store.vala | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)