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 714652 - assertion failure in Geary.Imap.ClientSession
assertion failure in Geary.Imap.ClientSession
Status: RESOLVED FIXED
Product: geary
Classification: Other
Component: engine
0.4.0
Other All
: High normal
: ---
Assigned To: Geary Maintainers
Geary Maintainers
Depends on:
Blocks:
 
 
Reported: 2013-02-07 12:56 UTC by Charles Lindsay
Modified: 2013-06-26 01:22 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Charles Lindsay 2013-11-21 20:28:29 UTC


---- Reported by chaz@yorba.org 2013-02-06 16:56:00 -0800 ----

Original Redmine bug id: 6341
Original URL: http://redmine.yorba.org/issues/6341
Searchable id: yorba-bug-6341
Original author: Charles Lindsay
Original description:

Testing a patch for #6318 (which means I was rapidly switching folders), I
found an assertion failure in Geary.Imap.ClientSession.close_mailbox_async:

    
    
     [deb] 16:48:51 imap-account.vala:134: Unable to get status for Shotwell: User cancelled operation
     [deb] 16:48:51 imap-engine-generic-folder.vala:473: Unable to open or prepare remote folder Gmail account chaz@yorba.org:Shotwell: Shotwell not open
     [deb] 16:48:51 geary-conversation-monitor.vala:718: Folder Gmail account chaz@yorba.org:Shotwell close reason GEARY_FOLDER_CLOSE_REASON_REMOTE_ERROR
     [deb] 16:48:51 imap-engine-generic-folder.vala:441: Opening remote Shotwell
     [deb] 16:48:51 geary-conversation-monitor.vala:383: ConversationMonitor seeding with local email for Gmail account chaz@yorba.org:Shotwell
     [deb] 16:48:51 imap-engine-generic-folder.vala:118: normalize_folders Gmail account chaz@yorba.org:Shotwell
     [deb] 16:48:51 geary-conversation-monitor.vala:718: Folder Gmail account chaz@yorba.org:Shotwell close reason GEARY_FOLDER_CLOSE_REASON_LOCAL_CLOSE
     [deb] 16:48:51 imap-engine-generic-folder.vala:579: Closing replay queue for Gmail account chaz@yorba.org:Shotwell...
     [deb] 16:48:51 geary-conversation-monitor.vala:520: Error while assembling conversations in Gmail account chaz@yorba.org:Shotwell: list_email_async failed: folder Gmail account chaz@yorba.org:Shotwell is not open
     [deb] 16:48:51 geary-conversation-monitor.vala:385: ConversationMonitor seeded for Gmail account chaz@yorba.org:Shotwell
     [deb] 16:48:51 imap-engine-generic-folder.vala:473: Unable to open or prepare remote folder Gmail account chaz@yorba.org:Shotwell: Shotwell not open
    **
    ERROR:/home/chaz/devel/geary/src/engine/imap/transport/imap-client-session.vala:1007:geary_imap_client_session_close_mailbox_async_co: assertion failed: (current_mailbox == null)
    

The backtrace is:

    
    
    #0  0x00007f0c1155c425 in __GI_raise (sig=<optimized out>)
        at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
    64    ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
    (gdb) bt
    #0  0x00007f0c1155c425 in __GI_raise (sig=<optimized out>)
        at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
    #1  0x00007f0c1155fb8b in __GI_abort () at abort.c:91
    #2  0x00007f0c12072b87 in g_assertion_message (domain=domain@entry=0x0, 
        file=file@entry=0x5d7138 "/home/chaz/devel/geary/src/engine/imap/transport/imap-client-session.vala", line=line@entry=1007, 
        func=func@entry=0x5da560 <__PRETTY_FUNCTION__.27336> "geary_imap_client_session_close_mailbox_async_co", message=<optimized out>)
        at /build/buildd/glib2.0-2.34.1/./glib/gtestutils.c:1877
    #3  0x00007f0c120730a4 in g_assertion_message_expr (domain=domain@entry=0x0, 
        file=file@entry=0x5d7138 "/home/chaz/devel/geary/src/engine/imap/transport/imap-client-session.vala", line=line@entry=1007, 
        func=func@entry=0x5da560 <__PRETTY_FUNCTION__.27336> "geary_imap_client_session_close_mailbox_async_co", expr=expr@entry=0x5d865e "current_mailbox == null")
        at /build/buildd/glib2.0-2.34.1/./glib/gtestutils.c:1888
    #4  0x00000000004eec64 in geary_imap_client_session_close_mailbox_async_co (
        _data_=0x2748a80)
        at /home/chaz/devel/geary/src/engine/imap/transport/imap-client-session.vala:1007
    #5  0x00000000004f65b9 in geary_imap_client_session_close_mailbox_async (
        self=<optimized out>, cancellable=cancellable@entry=0x0, 
        _callback_=_callback_@entry=0x4e8a30 <geary_imap_client_session_manager_do_close_mailbox_async_ready>, _user_data_=_user_data_@entry=0x2626020)
        at /home/chaz/devel/geary/src/engine/imap/transport/imap-client-session.vala:7
    #6  0x00000000004e88ba in geary_imap_client_session_manager_do_close_mailbox_async_co (
        _data_=0x2626020)
        at /home/chaz/devel/geary/src/engine/imap/transport/imap-client-session-manager.vala:224
    #7  0x00000000004ebf99 in geary_imap_client_session_manager_do_close_mailbox_async (
        self=self@entry=0x1e00580, context=context@entry=0x7f0bfc004300, 
        _callback_=_callback_@entry=0x0, _user_data_=_user_data_@entry=0x0)
        at /home/chaz/devel/geary/src/engine/imap/transport/imap-client-session-manager.vala:7
    #8  0x00000000004ec0df in geary_imap_client_session_manager_on_context_freed (
        self=0x1e00580, semantics=<optimized out>, contexts=0x1c266f0)
        at /home/chaz/devel/geary/src/engine/imap/transport/imap-client-session-manager.vala:218
    #9  0x00007f0c12310140 in g_closure_invoke (closure=0x2797790, return_value=0x0, 
        n_param_values=1, param_values=0x7ffffc09ad30, invocation_hint=0x7ffffc09acd0)
        at /build/buildd/glib2.0-2.34.1/./gobject/gclosure.c:777
    #10 0x00007f0c12321550 in signal_emit_unlocked_R (node=node@entry=0x1e7ee70, 
        detail=detail@entry=0, instance=instance@entry=0x7f0bfc004300, 
        emission_return=emission_return@entry=0x0, 
        instance_and_params=instance_and_params@entry=0x7ffffc09ad30)
        at /build/buildd/glib2.0-2.34.1/./gobject/gsignal.c:3551
    #11 0x00007f0c123294af in g_signal_emit_valist (instance=instance@entry=0x7f0bfc004300, 
        signal_id=signal_id@entry=437, detail=detail@entry=0, 
        var_args=var_args@entry=0x7ffffc09afc8)
        at /build/buildd/glib2.0-2.34.1/./gobject/gsignal.c:3300
    #12 0x00007f0c12329b50 in g_signal_emit_by_name (instance=0x7f0bfc004300, 
        detailed_signal=0x5eb310 "freed")
        at /build/buildd/glib2.0-2.34.1/./gobject/gsignal.c:3393
    #13 0x0000000000545a9d in geary_smart_reference_finalize (obj=0x27a9800)
        at /home/chaz/devel/geary/src/engine/util/util-reference-semantics.vala:94
    #14 0x00000000004fe98f in geary_imap_mailbox_finalize (obj=0x27a9800)
    ---Type <return> to continue, or q <return> to quit---
        at /home/chaz/devel/geary/src/engine/imap/transport/imap-mailbox.vala:7
    #15 0x00007f0c123150a8 in g_object_unref (_object=0x27a9800)
        at /build/buildd/glib2.0-2.34.1/./gobject/gobject.c:3023
    #16 0x00000000004d4dc4 in geary_imap_folder_finalize (obj=0x26f78f0)
        at /home/chaz/devel/geary/src/engine/imap/api/imap-folder.vala:15
    #17 0x00007f0c123150a8 in g_object_unref (_object=0x26f78f0)
        at /build/buildd/glib2.0-2.34.1/./gobject/gobject.c:3023
    #18 0x0000000000578a62 in geary_imap_engine_generic_folder_normalize_folders_data_free (
        _data=0x27c4ff0)
        at /home/chaz/devel/geary/src/engine/imap-engine/imap-engine-generic-folder.vala:7
    #19 0x00007f0c125bc128 in clear_op_res (simple=0x2767d80)
        at /build/buildd/glib2.0-2.34.1/./gio/gsimpleasyncresult.c:257
    #20 g_simple_async_result_finalize (object=0x2767d80)
        at /build/buildd/glib2.0-2.34.1/./gio/gsimpleasyncresult.c:277
    #21 0x00007f0c123150a8 in g_object_unref (_object=0x2767d80)
        at /build/buildd/glib2.0-2.34.1/./gobject/gobject.c:3023
    #22 0x000000000057cd3e in geary_imap_engine_generic_folder_normalize_folders_co (
        _data_=0x27c4ff0)
        at /home/chaz/devel/geary/src/engine/imap-engine/imap-engine-generic-folder.vala:403
    #23 0x00007f0c125bcf57 in g_simple_async_result_complete (simple=0x2764080)
        at /build/buildd/glib2.0-2.34.1/./gio/gsimpleasyncresult.c:775
    #24 0x000000000050f3d7 in geary_imap_db_folder_get_earliest_uid_async_co (
        _data_=0x2280060) at /home/chaz/devel/geary/src/engine/imap-db/imap-db-folder.vala:410
    #25 geary_imap_db_folder_get_earliest_uid_async_co (_data_=0x2280060)
        at imap-db-folder.c:6521
    #26 0x00007f0c125bcf57 in g_simple_async_result_complete (simple=0x27680b0)
        at /build/buildd/glib2.0-2.34.1/./gio/gsimpleasyncresult.c:775
    #27 0x00007f0c125bd059 in complete_in_idle_cb (data=<optimized out>)
        at /build/buildd/glib2.0-2.34.1/./gio/gsimpleasyncresult.c:787
    #28 0x00007f0c12050ab5 in g_main_dispatch (context=0x1abda80)
        at /build/buildd/glib2.0-2.34.1/./glib/gmain.c:2715
    #29 g_main_context_dispatch (context=context@entry=0x1abda80)
        at /build/buildd/glib2.0-2.34.1/./glib/gmain.c:3219
    #30 0x00007f0c12050de8 in g_main_context_iterate (context=0x1abda80, block=block@entry=1, 
        dispatch=dispatch@entry=1, self=<optimized out>)
        at /build/buildd/glib2.0-2.34.1/./glib/gmain.c:3290
    #31 0x00007f0c120511e2 in g_main_loop_run (loop=0x1c0de10)
        at /build/buildd/glib2.0-2.34.1/./glib/gmain.c:3484
    #32 0x00007f0c13cee9b5 in gtk_main () at /build/buildd/gtk+3.0-3.6.0/./gtk/gtkmain.c:1162
    #33 0x00000000005497c4 in yorba_application_run (self=0x1aad810, 
        args=args@entry=0x7ffffc09b4f8, args_length1=args_length1@entry=2)
        at /home/chaz/devel/geary/src/common/common-yorba-application.vala:143
    #34 0x000000000045e6bf in _vala_main (args=0x7ffffc09b4f8, args_length1=2)
        at /home/chaz/devel/geary/src/client/main.vala:10
    #35 0x00007f0c1154776d in __libc_start_main (main=0x44e350 <main>, argc=2, 
        ubp_av=0x7ffffc09b4f8, init=<optimized out>, fini=<optimized out>, 
        rtld_fini=<optimized out>, stack_end=0x7ffffc09b4e8) at libc-start.c:226
    #36 0x000000000044e399 in _start ()
    

Sounds like (from talking about it briefly) this assertion might be bogus, and
might go away with the reworked IMAP code for #5224, anyway.

Related issues:
related to geary - 5364: rapidly switching folders causes (possibly
fatal) assertions (Invalid)
related to geary - 5224: Dovecot (and other open-source servers) work
poorly (Fixed)



---- Additional Comments From geary-maint@gnome.bugs 2013-06-25 18:22:00 -0700 ----

### History

####

#1

Updated by Jim Nelson 10 months ago

  * **Target version** set to _0.3.0_

####

#2

Updated by Jim Nelson 9 months ago

  * **Priority** changed from _Normal_ to _High_

####

#3

Updated by Jim Nelson 9 months ago

  * **Keywords** set to _needs-testing_

We should do some testing on this use case (rapidly switching folders) and see
if it still exists.

####

#4

Updated by Jim Nelson 8 months ago

  * **Target version** changed from _0.3.0_ to _0.4.0_

####

#5

Updated by Jim Nelson 5 months ago

  * **Status** changed from _Open_ to _Fixed_

I believe #5224 has fixed this. If seen, please re-open.



--- Bug imported by chaz@yorba.org 2013-11-21 20:28 UTC  ---

This bug was previously known as _bug_ 6341 at http://redmine.yorba.org/show_bug.cgi?id=6341

Unknown milestone "unknown in product geary. 
   Setting to default milestone for this product, "---".
Setting qa contact to the default for this product.
   This bug either had no qa contact or an invalid one.