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 740585 - [IMAPx] Ignore timeout when no command is running
[IMAPx] Ignore timeout when no command is running
Status: RESOLVED FIXED
Product: evolution
Classification: Applications
Component: general
3.12.x (obsolete)
Other Linux
: Normal normal
: ---
Assigned To: Evolution Shell Maintainers Team
Evolution QA team
Depends on:
Blocks:
 
 
Reported: 2014-11-23 17:35 UTC by Chris
Modified: 2014-11-28 13:04 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
2300 Syslog Snippet (58.89 KB, application/pdf)
2014-11-25 14:17 UTC, Chris
Details
0000 Syslog snippet (57.45 KB, application/pdf)
2014-11-25 14:18 UTC, Chris
Details

Description Chris 2014-11-23 17:35:56 UTC
Gnome 3.12.2, Ubuntu 14.04.1 LTS, Evolution 3.12.8. Immediately after upgrading to the new version I started seeing this in my syslog:

Nov 21 16:35:13 localhost imapd: DISCONNECTED, user=chris, ip=[::ffff:127.0.0.1], headers=33141, body=0, rcvd=421, sent=46672, time=16882
Nov 21 16:35:13 localhost imapd: DISCONNECTED, user=chris, ip=[::ffff:127.0.0.1], headers=234210, body=10174, rcvd=1816330, sent=140547693, time=16882
Nov 21 16:35:22 localhost imapd: Connection, ip=[::ffff:127.0.0.1]
Nov 21 16:35:23 localhost imapd: LOGIN, user=chris, ip=[::ffff:127.0.0.1], port=[35601], protocol=IMAP
Nov 21 16:37:03 localhost imapd: DISCONNECTED, user=chris, ip=[::ffff:127.0.0.1], headers=20224, body=0, rcvd=20336, sent=1482006, time=100
Nov 21 16:37:21 localhost imapd: Connection, ip=[::ffff:127.0.0.1]
Nov 21 16:37:22 localhost imapd: LOGIN, user=chris, ip=[::ffff:127.0.0.1], port=[35603], protocol=IMAP
Nov 21 16:37:22 localhost imapd: Connection, ip=[::ffff:127.0.0.1]
Nov 21 16:37:22 localhost imapd: LOGIN, user=chris, ip=[::ffff:127.0.0.1], port=[35604], protocol=IMAP

and so on even up until this minute:

Nov 23 11:30:47 localhost imapd: DISCONNECTED, user=chris, ip=[::ffff:127.0.0.1], headers=0, body=0, rcvd=16935, sent=1438722, time=92
Nov 23 11:31:15 localhost imapd: Connection, ip=[::ffff:127.0.0.1]
Nov 23 11:31:15 localhost imapd: LOGIN, user=chris, ip=[::ffff:127.0.0.1], port=[51672], protocol=IMAP

I have several Debug commands I could use but I'm not sure which one would work for this:

CAMEL_DEBUG=mail:io evolution >& /home/chris/evodebug1.txt
CAMEL_DEBUG=imapx:io evolution >& /home/chris/Evo-Debug-Logs/imapx-io-112314.txt
CAMEL_DEBUG=imapx:debug,imapx:extra evolution >& /home/chris/evodebugfull.txt
CAMEL_DEBUG=all evolution >& /home/chris/Evo-Debug-Logs/evo_debug.log
CAMEL_DEBUG=imapx:io evolution &>/home/chris/log.txt

I've restarted the Courier IMAP daemon which made no difference.
Comment 1 Milan Crha 2014-11-25 07:41:44 UTC
Thanks for a bug report. As I indicated on the mailing list [1]:

it's not a bug, or at least part of it. There had been added
a 90 seconds timeout for connections, thus if there's an inactivity 
for the 90 seconds, the IMAPx disconnects automatically (to be honest, 
I thought the timeout is relevant only for ongoing requests, not for 
"idle" connection state). More interesting is why IMAPx reconnected 
short after the disconnect.

Were you working with evolution till that ~22:00, or it was doing this 
on its own? By working with evolution I mean message reading, 
downloading, folder operations and such, basically anything what would 
do something with the connection to the server and keep it alive or 
require it, thus reconnect.

The debugging command to use is:
   $ CAMEL_DEBUG=imapx:io,imapx:conman evolution &>log.txt
As always, make sure you'll not expose any private information, like 
passwords, server addresses, emails and so on (the log will contain 
raw communication, thus anything what you download from it, including 
messages content).

[1] https://mail.gnome.org/archives/evolution-list/2014-November/msg00139.html
Comment 2 Chris 2014-11-25 14:12:38 UTC
As soon as I close down Evolution for the night the issue ceases. I've attached three files:

1) Output of the debug command you noted above.
2) My hourly syslog snippets sent to me. Note - the 2300 snippet is for the time period from 2200 - 2259 and the 0000 snippet is from 2300 - 2359.

For instance, I shut down Evolution last night at Nov 24 22:43:23 and went to bed. The issue stopped at that point. I've also noticed that the timeout isn't consistent as below:

Nov 24 22:38:20 localhost imapd: DISCONNECTED, user=chris, ip=
[::ffff:127.0.0.1], headers=0, body=0, rcvd=16964, sent=1431659, time=90
Nov 24 22:38:50 localhost imapd: Connection, ip=[::ffff:127.0.0.1]
Nov 24 22:38:50 localhost imapd: LOGIN, user=chris, ip=[::ffff:127.0.0.1],
port=[57686], protocol=IMAP
Nov 24 22:40:25 localhost imapd: DISCONNECTED, user=chris, ip=
[::ffff:127.0.0.1], headers=0, body=0, rcvd=17060, sent=1451073, time=95
Nov 24 22:40:50 localhost imapd: Connection, ip=[::ffff:127.0.0.1]
Nov 24 22:40:50 localhost imapd: LOGIN, user=chris, ip=[::ffff:127.0.0.1],
port=[57749], protocol=IMAP
Nov 24 22:42:22 localhost imapd: DISCONNECTED, user=chris, ip=
[::ffff:127.0.0.1], headers=0, body=0, rcvd=17060, sent=1451073, time=92

Here is where I shut down for the night:

Nov 24 22:43:12 localhost imapd: DISCONNECTED, user=chris, ip=
[::ffff:127.0.0.1], headers=0, body=9293, rcvd=17165, sent=1460871, time=22
Comment 3 Chris 2014-11-25 14:17:46 UTC
Created attachment 291460 [details]
2300 Syslog Snippet
Comment 4 Chris 2014-11-25 14:18:30 UTC
Created attachment 291461 [details]
0000 Syslog snippet
Comment 5 Chris 2014-11-25 14:21:11 UTC
Debug output is located here:

http://pastebin.com/hczeEVUb

as it was too large for bugzilla.
Comment 6 Milan Crha 2014-11-27 14:17:49 UTC
Do you have that often check for new mails set? Like each two minutes (or one) or such? Anyway, I think it's safe to ignore the timeout error when there was no command waiting for a result, thus I made this change. A workaround might be to limit number of connections for that account to 1 and/or enable "Listen for server change notifications", which will not let the connection timeout.

Created commit 28ddf2e in eds master (3.13.9+) [1]
Created commit 4033576 in eds evolution-data-server-3-12 (3.12.9+)

[1] https://git.gnome.org/browse/evolution-data-server/commit/?id=28ddf2e
Comment 7 Chris 2014-11-27 15:11:24 UTC
Yes, I do have it set to check for new mail every 2 minutes. Per your post above I've set the number of connections to 1 and have enabled 'listen for server change notifications'. Thank you Milan for your quick response to this.
Comment 8 Chris 2014-11-28 13:04:55 UTC
Following up to let you know that the work-around has fixed the issue.