GNOME Bugzilla – Bug 728976
[IMAPx] Ignore \NoSelect for Inbox folder
Last modified: 2014-05-22 06:51:20 UTC
Using Debian Sid/unstable with Evolution 3.12.0 from experimental Evolution does not display the message list of a folder and therefore no messages can be read. No idea if related to bug 728587 [1]. On the left side the folders and the unread messages in parentheses are shown, but clicking on the folder the message list is not shown and therefore no messages can be read. This happens with local Maildir and IMAP folders. [1] https://bugzilla.gnome.org/show_bug.cgi?id=728587
After putting Evolution into offline mode the messages were suddenly displayed. Then trying to go online again the message are not displayed again.
Same with Evolution Data Server 3.12.1+ build from commit 4615a98c7be1e3f8d23aa8a1c4f43b9d1fb62712 Author: Milan Crha <mcrha@redhat.com> Date: Fri Apr 25 08:33:48 2014 +0200 Remove unused imapx_unmark_folder_subscribed() but even going into offline mode did not help this time.
Thanks for a bug report. That sounds like gtk/packing issue, widget being incorrectly hidden. Could you provide a screenshot, please? I would also run evolution from a terminal and check whether it prints anything unusual on start. Does it change anything, if you run evolution from another view, and then switch to Mail? ($ evolution -c contacts) By the way, what is the gtk+ version you've installed?
One more thing, what if you disable the preview panel (Ctrl+M), the whole window space will be used by the message list. Another option (I'd really like to see the screen-shot and console output) is that there are none columns in the message list, this it is left empty. View->Current view->Messages (or other name), should get you back to the start.
Milan, thank you for your replies. Before I do the testing, please tell me if I should take the 3.12.1 releases in Debian Sid/unstable or if it is better to rebuild the packages. I plan to use Evolution 3.12.1 from Debian Sid/unstable and build Evolution Data Server from the branch `evolution-data-server-3-12` with your changes with the author date from last Wednesday.
(In reply to comment #3) […] > By the way, what is the gtk+ version you've installed? libgtk-3-0:i386 3.12.1-1
(In reply to comment #5) > Milan, thank you for your replies. > > Before I do the testing, please tell me if I should take the 3.12.1 releases in > Debian Sid/unstable or if it is better to rebuild the packages. I plan to use > Evolution 3.12.1 from Debian Sid/unstable and build Evolution Data Server from > the branch `evolution-data-server-3-12` with your changes with the author date > from last Wednesday. The packages from unstable (3.12.1) should be better than 3.12.0, if you still have that installed. If upgrading *all* evo packages still fails, then I suggest you go the git route, but please test the packages first.
(In reply to comment #7) > (In reply to comment #5) > > Milan, thank you for your replies. > > > > Before I do the testing, please tell me if I should take the 3.12.1 releases in > > Debian Sid/unstable or if it is better to rebuild the packages. I plan to use > > Evolution 3.12.1 from Debian Sid/unstable and build Evolution Data Server from > > the branch `evolution-data-server-3-12` with your changes with the author date > > from last Wednesday. > > The packages from unstable (3.12.1) should be better than 3.12.0, if you still > have that installed. Currently Evolution 3.8.5-2+b3 and Evolution-Data-Server 3.8.5-3+b2 are running on the system. > If upgrading *all* evo packages still fails, then I suggest you go the git > route, but please test the packages first. I upgraded all packages with 3.12.0 from Debian experimental and 3.12.1 from Debian Sid/unstable with no luck.
(In reply to comment #8) > (In reply to comment #7) […] > > If upgrading *all* evo packages still fails, then I suggest you go the git > > route, but please test the packages first. > > I upgraded all packages with 3.12.0 from Debian experimental and 3.12.1 from > Debian Sid/unstable with no luck. … meaning, both showed the described problem, that the messages could not be read.
(In reply to comment #9) > … meaning, both showed the described problem, that the messages could not be > read. So then attach a screenshot and try the things that Milan suggested in comments #3 and #4.
There is not much difference between 3.12.0 and 3.12.1 in this regard, I do not see anything directly related to the message list on the first look, thus there is not much difference for me which version you'll use to provide the required information.
Created attachment 276049 [details] Screenshot taken with `import -delay 2 …` So, I installed the packaged versions of Evolution 3.12.1 and Evolution Data Server 3.12.1. Starting it my local INBOX was shown fine, but then switching to an IMAP folder no messages were shown and then switching back to the INBOX no messages are shown there either. $ evolution & (evolution:30105): Gtk-WARNING **: Failed to register client: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.SessionManager was not provided by any .service files (evolution:30105): camel-imapx-WARNING **: Unable to load store summary: Expected version (1), got (0) (evolution:30105): camel-WARNING **: Cannot load summary file: Erfolg (evolution:30105): camel-imapx-WARNING **: Unable to load store summary: Expected version (1), got (0) (evolution:30105): camel-WARNING **: Cannot load summary file: Erfolg (evolution:30105): camel-imapx-WARNING **: Unable to load store summary: Expected version (1), got (0) (evolution:30105): camel-WARNING **: Cannot load summary file: Erfolg (evolution:30105): camel-imapx-WARNING **: Unable to load store summary: Expected version (1), got (0) (evolution:30105): camel-WARNING **: Cannot load summary file: Erfolg (evolution:30105): camel-imapx-WARNING **: Unable to load store summary: Expected version (1), got (0) (evolution:30105): camel-WARNING **: Cannot load summary file: Erfolg (evolution:30105): camel-imapx-WARNING **: Unable to load store summary: Expected version (1), got (0) (evolution:30105): camel-WARNING **: Cannot load summary file: Erfolg (evolution:30105): camel-imapx-WARNING **: Unable to load store summary: Expected version (1), got (0) (evolution:30105): camel-WARNING **: Cannot load summary file: Erfolg (evolution:30105): camel-imapx-WARNING **: Unable to load store summary: Expected version (1), got (0) (evolution:30105): camel-WARNING **: Cannot load summary file: Erfolg (evolution:30105): camel-imapx-WARNING **: Unable to load store summary: Expected version (1), got (0) (evolution:30105): camel-WARNING **: Cannot load summary file: Erfolg (evolution:30105): evolution-mail-WARNING **: (mail-send-recv.c:1117):receive_update_got_folderinfo: runtime check failed: (info != NULL)
Switching to contacts and back does not change anything. By the way, none of my contacts are shown either and it writes something like no contacts are there. Are there problems with contacts when downgrading to version Evolution 3.8.5? It’d be really bad if I lost all these contacts. Probably I’ll create a new ticket for that.
To clarify, switching to the IMAP folder in the folder view, there is not even an arrow for expansion shown, so it looks like it does not even know there are any folders. This worked with Evolution 3.8.5.
Quitting Evolution, which takes several minutes, shortly before it was done, the following messages were printed to the terminal. (evolution:30105): evolution-mail-WARNING **: (mail-send-recv.c:1117):receive_update_got_folderinfo: runtime check failed: (info != NULL) (evolution:30105): evolution-mail-WARNING **: Failed to refresh folder '1@example.com: [Gmail]': Fehler beim Aktualisieren des Ordners: Invalid folder: [Gmail] (Failure) (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): evolution-mail-WARNING **: mail_backend_local_trash_expunge_done_cb: Failed to expunge local trash: Connection to server cancelled (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): evolution-mail-WARNING **: mail_backend_local_trash_expunge_done_cb: Failed to expunge local trash: Connection to server cancelled (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): evolution-mail-WARNING **: mail_backend_local_trash_expunge_done_cb: Failed to expunge local trash: Fehler beim Speichern von »[Gmail]«: Unknown Mailbox: [Gmail] (now in authenticated state) (Failure) (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): evolution-mail-WARNING **: mail_backend_local_trash_expunge_done_cb: Failed to expunge local trash: Fehler beim Speichern von »INBOX«:Fehler beim Löschen der Nachricht: Fehler beim Erhalt von Daten: Die Verbindung wurde vom Kommunikationspartner zurückgesetzt (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): evolution-mail-WARNING **: mail_backend_local_trash_expunge_done_cb: Failed to expunge local trash: Fehler beim Speichern von »[Gmail]«: Unknown Mailbox: [Gmail] (now in authenticated state) (Failure) (evolution:30105): GLib-WARNING **: GError set over the top of a previous GError or uninitialized memory. This indicates a bug in someone's code. You must ensure an error is NULL before it's set. The overwriting error message was: Sie müssen online arbeiten, um diesen Vorgang abzuschließen (evolution:30105): evolution-mail-WARNING **: Failed to refresh folder '1@example.com: [Gmail]': Fehler beim Aktualisieren des Ordners: Invalid folder: [Gmail] (Failure) (evolution:30105): evolution-mail-WARNING **: mail_backend_local_trash_expunge_done_cb: Failed to expunge local trash: Verbindung mit imap.example.com ist gescheitert:Das Netzwerk ist nicht erreichbar (evolution:30105): GLib-CRITICAL **: Source ID 20482 was not found when attempting to remove it (evolution:30105): evolution-util-WARNING **: Schlüssel des Schlüsselbundes kann nicht genutzt werden: Kein Benutzer- oder Servername ** (evolution:30105): WARNING **: Shell not finalized on exit
Okay, we are getting somewhere now, which is good. The screenshot shows that message list columns are there, so the problem might not be here. The runtime warnings on the console are also interesting. This: > (evolution:30105): evolution-mail-WARNING **: > (mail-send-recv.c:1117):receive_update_got_folderinfo: runtime check > failed: (info != NULL) is definitely related to these: > (evolution:30105): camel-WARNING **: Cannot load summary file: Erfolg > > (evolution:30105): camel-imapx-WARNING **: Unable to load store summary: > Expected version (1), got (0) Did you switch between versions of evolution forth and back? It seems so, according to these warnings. Anyway, this warning is used with IMAPx accounts, thus it's for files stored at ~/.cache/evolution/mail/. The files and folders there can be safely deleted, that's only a local copy of server data, which can be downloaded again. The only counter part is that it'll take some time till all your folders summary is populated again (how long depends on your folder sizes). I would expect that the summary will be recreated after this error, but it didn't do it for some reason. Though the reason seems to be, from the other set of runtime warnings, that the evolution wasn't able to connect to the server. CAMEL_DEBUG=imapx:io,imapx:conman may give more detailed information (running evolution with this environment variable set to this value). This will be fixed in 3.12.2 (to be released the next week), but maybe the server doesn't like concurrent connections and kicks evolution off, thus go to ~/.config/evolution/sources and search for all .source files with string ConcurrentConnections. You may have there either ConcurrentConnections=5 or ConcurrentConnections=3. Change the value to 1, to disable concurrent connections for now. This change requires restart of evolution-source-registry (or simply relogin to the session). With respect of addressbook, there is no support for downgrade, and the format used for addressbook save changed between 3.8.x and 3.12.x, but the contacts are not lost at all. You can search for contacts.db in ~/.local/share/evolution/addressbook (one is under 'system' subfolder, which corresponds to On This Computer/Personal). Run this command: $ sqlite3 contacts.db "select vcard from folder_id">contacts.vcf to have created a contacts.vcf with all contacts, which can be imported into evolution with File->Import->Single file->...
(In reply to comment #16) > Okay, we are getting somewhere now, which is good. > > The screenshot shows that message list columns are there, so the problem might > not be here. > > The runtime warnings on the console are also interesting. > This: > > > (evolution:30105): evolution-mail-WARNING **: > > (mail-send-recv.c:1117):receive_update_got_folderinfo: runtime check > > failed: (info != NULL) > > is definitely related to these: > > > (evolution:30105): camel-WARNING **: Cannot load summary file: Erfolg > > > > (evolution:30105): camel-imapx-WARNING **: Unable to load store summary: > > Expected version (1), got (0) > > Did you switch between versions of evolution forth and back? It seems so, > according to these warnings. Yes, I did. > Anyway, this warning is used with IMAPx accounts, thus it's for files stored > at ~/.cache/evolution/mail/. The files and folders there can be safely > deleted, that's only a local copy of server data, which can be downloaded > again. The only counter part is that it'll take some time till all your > folders summary is populated again (how long depends on your folder sizes). > > I would expect that the summary will be recreated after this error, but it > didn't do it for some reason. Though the reason seems to be, from the other set > of runtime warnings, that the evolution wasn't able to connect to the server. > CAMEL_DEBUG=imapx:io,imapx:conman may give more detailed information (running > evolution with this environment variable set to this value). I reported that warning in bug 728973 [1]. > This will be fixed in 3.12.2 (to be released the next week), but maybe the > server doesn't like concurrent connections and kicks evolution off, thus go to > ~/.config/evolution/sources and search for all .source files with string > ConcurrentConnections. You may have there either ConcurrentConnections=5 or > ConcurrentConnections=3. Change the value to 1, to disable concurrent > connections for now. This change requires restart of evolution-source-registry > (or simply relogin to the session). Thanks. I’ll try that as soon as possible. Was the concurrent connection use only introduced in 3.10 or 3.12? I never had problems before. > With respect of addressbook, there is no support for downgrade, and the format > used for addressbook save changed between 3.8.x and 3.12.x, but the contacts > are not lost at all. You can search for contacts.db in > ~/.local/share/evolution/addressbook (one is under 'system' subfolder, which > corresponds to On This Computer/Personal). Run this command: > $ sqlite3 contacts.db "select vcard from folder_id">contacts.vcf > to have created a contacts.vcf with all contacts, which can be imported into > evolution with File->Import->Single file->... Thanks for telling me how to restore them! [1] https://bugzilla.gnome.org/show_bug.cgi?id=728973
Something is blocking Evolution in the back ground. Looking at the debug output, the IMAP messages are downloaded as far as I can see. I am unable to send the 22 MB to Milan, as Evolution does not work. I do not want to upload it here, as I do not want the private data to be exposed. Unfortunately Evolution also crashes with a segmentation fault in `libevolution-util`. See bug 729790 [1]. [1] https://bugzilla.gnome.org/show_bug.cgi?id=729790
(In reply to comment #17) > Thanks. I’ll try that as soon as possible. Was the concurrent connection use > only introduced in 3.10 or 3.12? I never had problems before. It was introduced, aka truly used, only in 3.12.1. The code was there all the time, but it was not enabled. I enabled it - in 3.12.1. And made couple fixes of it, for 3.12.2. I'll check the other bugs.
*** Bug 730377 has been marked as a duplicate of this bug. ***
Paul, did the tweak of ConcurrentConnections help, please?
(In reply to comment #21) > Paul, did the tweak of ConcurrentConnections help, please? I did not try it, as the problem was solved by upgrading to Evolution 3.12.2 and Evolution Data Server 3.12.2 and disabling the IMAP account, which is not operated correctly anymore (<…@alice-dsl.net>). Sorry for not analyzing this more carefully. I can try later to enable that account again and see what happens. In my case, the INBOX is a local Maildir though, where the IMAP account is a different account. So Evolution Data Server should probably not “lock” and influence other accounts, only because there is a problem with the IMAP account.
As mentioned in bug 730377 I was affected by this bug starting with Evolution 3.12.2 on debian jessie. Since I can't reproduce this issue with Evolution 3.12.1 on my other notebook (and the same IMAP accounts) I'm not sure this is the same bug. However, Milan asked me to add my findings to this report. After the upgrade to 3.12.2 the inbox of one of my IMAP accounts seemed to be empty, all other subfolders where fine. With other clients I could see that the messages in my inbox where still there. Also, I had no problems with my second IMAP account. As you can see in the screenshot attached to bug 730377 there is no information about the messages (unread/read) in the grey box with the foldername on the left. In the message list there's no notice "There are no messages in this folder." like normally when you view an empty folder. However, when I first view an empty folder (with this notice) and then the inbox the notice is there. When I first view a folder with messages and then the inbox there's no such notice. Since my other IMAP account was still working I compared the two and found out that there's a difference in the folder subscription window: for the affected account there was no box to activate/deactivate subscription for the inbox, only for the sub-folders. For the other account there was such a box. So I tried to deactivate subscription of the inbox and since then both my IMAP accounts are affected. I can't change subscription status for the inboxes with other clients but I have no problem at all with icedove/thunderbird and webmail clients (roundcube and others) viewing/handling messages in my inboxes. For me, the tweak of ConcurrentConnections didn't change anything, putting Evolution in offline mode didn't help either.
I managed to setup a courier server and I can reproduce this behaviour too, on an Inbox folder. What I missed in nagy's log from the other bug was this: > [imapx:A] I/O: 'A00012 LSUB "" INBOX' > [imapx:A] I/O: '* LSUB (\Noselect \HasChildren) "." "INBOX" > A00012 OK LSUB completed' The \Noselect means "do not touch this folder at all". I do not know why courier returns that flag when it doesn't return it in previous requests, but anyway, Inbox is a special folder, which should be always available, thus ignore this flag for Inbox. This happened after my changes to IMAPx to check for subscribed folders in all namespaces, it seems. Created commit 8877374 in eds master (3.13.2+) Created commit b8922e4 in eds evolution-data-server-3-12 (3.12.3+) [1] https://git.gnome.org/browse/evolution-data-server/commit/?id=8877374
Milan, thank you for fixing this! Shouldn’t the marking of bug 730377 as a duplicate of this one be removed and marked fixed as a separate issues and both these issues seem unrelated. The issue I reported was with a version prior to 3.12.2. I’ll try to do that.
(In reply to comment #25) > The issue I reported was with a version prior to 3.12.2. Hrm, I missed this detail. evolution-data-server 3.12.1 can open Courier Inbox folder without any issue. Just to be 100% sure the bugs are different, could you disable all but the broken IMAPX account and run evolution from a terminal like this: $ CAMEL_DEBUG=imapx:io,imapx:conman evolution &>log.txt then select the Inbox and close evolution. Before attaching the log anywhere, or even sending it only to me (bug reference in the subject helps to not have it missed in my spam folder), search it for any private information. 3.12.1 could expose user credentials, thus definitely check LOGIN lines (there can be multiple of these). I'll see what the server returns, maybe it has marked Inbox as \NoSelect too and behaves slightly differently from Courier. Thanks in advance.