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 729241 - Mark all as read makes folder vanish
Mark all as read makes folder vanish
Status: RESOLVED FIXED
Product: evolution
Classification: Applications
Component: Mailer
3.12.x (obsolete)
Other Linux
: Normal normal
: ---
Assigned To: evolution-mail-maintainers
Evolution QA team
Depends on:
Blocks:
 
 
Reported: 2014-04-30 07:33 UTC by Joachim Breitner
Modified: 2015-06-14 08:32 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Screencast demonstrating the problem. (1.17 MB, video/ogg)
2014-04-30 07:33 UTC, Joachim Breitner
Details

Description Joachim Breitner 2014-04-30 07:33:41 UTC
Created attachment 275468 [details]
Screencast demonstrating the problem.

The Folder → Mark all as read functionality sometimes makes my folder vanish until I restart Evolution. It seems to happen only if something else is accessing the IMAP server at the same time (such as updating a folder). In that case, the status message „Marking all messages as read“ does not disappear from the status bar.

I have created a small screencast demonstrating the problem.
Comment 1 Joachim Breitner 2014-05-14 16:57:46 UTC
I just found this in the standard or error routput, it might be a hint:

(evolution:12534): evolution-module-mail-CRITICAL **: mark_all_read_got_folder_info: assertion 'folder_info != NULL' failed
Comment 2 Joachim Breitner 2014-07-19 18:17:41 UTC
This is still valid in 3.12.4, with a slightly more verbose error message.

(evolution:16977): camel-WARNING **: CamelIMAPXStore::get_folder_info_sync() reported failure without setting its GError

(evolution:16977): evolution-module-mail-CRITICAL **: mark_all_read_got_folder_info: assertion 'folder_info != NULL' failed


It also doesn’t make the folder vanish any more. The „Marking all messages as read“ status message stays, and I cannot quit evolution any more. I can still access other folders and continue working.

Might be related to #733410, possibly having the same cause.
Comment 3 Joachim Breitner 2014-07-22 21:52:30 UTC
This is still annoying (as it prevents me from quitting evolution cleanly, I always have to kill it).

It seems to happen only to certain kind of folders, which are living in a different namespace on the server. Is that, together with the error messages above, already a useful hint?

If not I can arrange to give some developer access to this particular setup.
Comment 4 Joachim Breitner 2015-01-12 15:15:32 UTC
Here is a CAMEL_DEBUG=imapx log of me trying to mark all mails as read in an affected folder:

imapx_find_connection_unlocked: for-expensive:0 will return:0x7fde17bb8d00 cmd-count:0 has-expensive:0 found:0; connections opened:1 max:5
   cmds:0 has-expensive:0 avail:1 cinfo:0x7fde17bb8d00 server:0x7fde17ca8ed0
[imapx:A] adding command, format = 'LIST "" %s RETURN (%t)'
[imapx:A] got string 'INBOX.XFeeds.planet openghana*'
[imapx:A] completing command buffer is [140] 'LIST "" "INBOX.XFeeds.planet openghana*" RETURN (CHILDREN SUBSCRIBED STATUS (MESSAGES UNSEEN UIDVALIDITY UIDNEXT HIGHESTMODSEQ) SPECIAL-USE)'
[imapx:A] enqueue job 'LIST "" "INBOX.XFeeds.planet openghana*" RETURN (CHILDREN SUBSCRIBED STATUS (MESSAGES UNSEEN UIDVALIDITY UIDNEXT HIGHESTMODSEQ) SPECIAL-USE)'
[imapx:A] ** Starting next command
[imapx:A] I/O: 'DONE'
[imapx:A] waiting for idle to stop 
[imapx:A] I/O: 'A00300 OK Idle completed.'
[imapx:A] Got completion response for command 00300 'IDLE'
[imapx:A] ** Starting next command
[imapx:A] - we're selected on 'INBOX.XFeeds.planet openghana', current jobs?
[imapx:A] -- Checking job queue
[imapx:A] -- -80 'LIST'?
[imapx:A] --> starting 'LIST'
[imapx:A] completing command buffer is [0] ''
[imapx:A] Starting command (active=1,) A00301 LIST "" "INBOX.XFeeds.planet openghana*" RETURN (CHILDREN SUBSCRIBED STATUS (MESSAGES UNSEEN UIDVALIDITY UIDNEXT HIGHESTMODSEQ) SPECIAL-USE)
[imapx:A] I/O: 'A00301 LIST "" "INBOX.XFeeds.planet openghana*" RETURN (CHILDREN SUBSCRIBED STATUS (MESSAGES UNSEEN UIDVALIDITY UIDNEXT HIGHESTMODSEQ) SPECIAL-USE)'
[imapx:A] ** Starting next command
[imapx:A] * no, no jobs
[imapx:A] I/O: '* LIST (\HasNoChildren) "." "INBOX.XFeeds.planet openghana"
* STATUS "INBOX.XFeeds.planet openghana" (MESSAGES 77 UIDNEXT 53181 UIDVALIDITY 1380837010 UNSEEN 4 HIGHESTMODSEQ 159419)
A00301 OK List completed.'
[imapx:A] got untagged response
[imapx:A] Have token 'LIST' id 0
[imapx:*] CamelIMAPXStore::mailbox-updated ("INBOX.XFeeds.planet openghana")
[imapx:A] got untagged response
[imapx:A] Have token 'STATUS' id 0
[imapx:*] CamelIMAPXStore::mailbox-updated ("INBOX.XFeeds.planet openghana")
[imapx:A] Got completion response for command 00301 'LIST'
[imapx:A] ==== list or lsub completed ==== 
[imapx:A] ** Starting next command
[imapx:A] starting idle 
[imapx:A] ** Starting next command
[imapx:A] * no, no jobs
[imapx:A] adding command, format = 'IDLE'
[imapx:A] completing command buffer is [4] 'IDLE'
[imapx:A] completing command buffer is [0] ''
[imapx:A] Starting command (active=1, literal) A00302 IDLE
[imapx:A] I/O: 'A00302 IDLE'

(evolution:31796): camel-WARNING **: CamelIMAPXStore::get_folder_info_sync() reported failure without setting its GError

(evolution:31796): evolution-module-mail-CRITICAL **: mark_all_read_got_folder_info: assertion 'folder_info != NULL' failed
imapx_find_connection_unlocked: for-expensive:0 will return:0x7fde17bb8d00 cmd-count:0 has-expensive:0 found:0; connections opened:1 max:5
   cmds:0 has-expensive:0 avail:1 cinfo:0x7fde17bb8d00 server:0x7fde17ca8ed0
[imapx:A] Removed folder INBOX/XFeeds/planet openghana from connection folder list - op done 
[imapx:A] I/O: '+ idling'
[imapx:A] Got continuation response for IDLE 
[imapx:A] ** Starting next command
[imapx:A] * no, no jobs
imapx_find_connection_unlocked: for-expensive:1 will return:0x7fde17bb8d00 cmd-count:0 has-expensive:0 found:0; connections opened:1 max:5
   cmds:0 has-expensive:0 avail:1 cinfo:0x7fde17bb8d00 server:0x7fde17ca8ed0


Probably not very helpful :-(
Comment 5 Milan Crha 2015-03-10 11:48:08 UTC
Thanks for a bug report. You are right, the latest log doesn't show much useful information. I see from it that the folder "INBOX/XFeeds/planet openghana" doesn't have subfolders, from which I'd suppose that the "Mark all read" should offer you to mark read messages only in that particular folder, but you weren't even asked that.

I tried to reproduce it here, with current development version (to be 3.15.92) and I didn't get that failure:
> mark_all_read_got_folder_info: assertion 'folder_info != NULL' failed

I was thinking of bug #729201, where was discussed a similar error. Maybe you already use that version (3.12.9 or newer).

I make a change to not let the mark_all_read stuck when the store doesn't return any folder_info, but that doesn't fix the root of the cause, the IMAPx backend returning no folder information and no error. The change was the commit 49f1982 in evo master (3.15.92+).
Comment 6 Joachim Breitner 2015-03-10 12:11:47 UTC
Thanks for looking into this. My version of evolution (3.12.9~git20141130) does not include the changes you mention in #729201 yet, so I’ll report back once a newer version hits Debian. Until then I’ll use Ctrl-A Ctrl-K which works fine.
Comment 7 Joachim Breitner 2015-04-24 10:31:38 UTC
It seems the problem disappeared after the Debian maintainers backported this commit:

https://git.gnome.org/browse/evolution-data-server/commit/?id=c64b95c59e5774a6eb335805122fae5cd54f0bbf
Comment 8 Milan Crha 2015-04-27 09:14:28 UTC
Thanks for the update. Please point him to bug #743533 comment #2, there was a regression with the commit he chose (maybe he's aware, but just in case).
Comment 9 Joachim Breitner 2015-06-13 13:13:16 UTC
Strange. The problem just re-appeared again. This is evolution-data-server 3.12.11-1. Should the fix be in that release?
Comment 10 Joachim Breitner 2015-06-14 08:32:09 UTC
Ok, 3.12 is old, and 3.16 has this fixed. Sorry for the noise.