Exchange Email Synchronisation Reliability

REPRODUCIBILITY (% or how often): too frequently
BUILD ID = OS VERSION (Settings > About product): 4.0.1.8
HARDWARE (XA2, Xperia 10…): XA2
UI LANGUAGE: English
REGRESSION: (compared to previous public release: Yes, No, ?): No improvement across Sailfish 2.0, 3.0 and 4.0

DESCRIPTION:

Yep, it’s this old, old chestnut again - but since there appears to be no recent summary on SFOS (only years old stuff on Jolla Together), I thought I’d try again…

I have five email accounts configured on my XA2; two of them are imap (which are fine) and three of them are exchange. This bug report only concerns Exchange accounts.

Of the three Exchange accounts, one is large and two are tiny; the bug affects all three identically, so size of mailbox/folder store isn’t an issue.

All three have inbox, sub-folders, contacts and calendar synchronised, two way, with priority to server. No provisioning.

All three have been variously set to ‘always up to date’, timed synchronisation (e.g. every five minutes), custom sync (always up to date at peak, every hour off peak). It makes no difference whatever setting you use in any of the three accounts. Two are are company Office 365 accounts, one is not (my personal email) - one uses an app password as Sailfish can’t handle 2FA, the two others do not.

They are the same accounts I have had for years and have used on SF 2.0, 3.0 and now 4.0.

For years they have failed to synchronise reliably. They:

  1. Just simply stop synchronising after a period of time with no error message, and/or
  2. Get stuck on ‘Updating’ with a continuous turning circle, and/or
  3. They fail (on 4.0), now with a warning triangle and ‘Sync Error’

Emails are therefore almost never up to date which severely affects usability of the app (I now dual carry an iphone for reliable email access).

I have tried:

  1. Deleting and re-creating the accounts; They work for a while and then stop

  2. Settings/Utilities restarting the network subsystem; Sometimes this fixes things for a while, sometimes it doesn’t - resulting in either a never-ending ‘Updating’ or a ‘sync error’

  3. restarting EAS and messageserver from the command line; again sometimes this works, sometimes it doesn’t and you still get a sync error

  4. Totally rebooting the phone; this always works immediately, until it fails again a short time later.

I have read an old bug about sometimes the sync stopping when you change networks from wireless to mobile (or vice-versa) so I have had my wife send me an email at home (wireless - it arrives automatically), then I have left home and she has tried again (mobile - it arrives automatically) and then gone back home again (wireless - it arrives automatically); so all good. But then do it a day later and it will fail - so no consistency there.

These issues have (for me and others at least) been outstanding for years, and given that Exchange support is a paid component of Sailfish X, really ought to have been fixed by now.

As an aside (and I suppose a bit off topic) unless Jolla puts some serious effort into fixing the core apps - email, browser and so on - so that they are reliable and usable (how about focusing on just those for a point release?) then people will simply start using reliable Android replacements and Sailfish will just become a fancy UI wrapper. I’m sure nobody wants this.

PRECONDITIONS:

STEPS TO REPRODUCE:

  1. create an exchange email account

EXPECTED RESULT:

The account synchronises in line with its configured settings

ACTUAL RESULT:

Synchronisation fails completely after n undetermined period of time. Repeated attempts and inconvenient workarounds required to manually sync.

ADDITIONAL INFORMATION:

(Please ALWAYS attach relevant data such as logs, screenshots, etc…)

1 Like

Should point out that on SF 2.0 I would have used imap for these accounts, so not really relevant.

It would certainly be good to get this fixed. Unfortunately the problem is sporadic and so hard to debug unless it’s actually happening on the phone. If you’re experiencing this often, would you be able to collect logs and pick out any errors from them?

To activate logs, you need to create a file ~/.config/eas-sailfish.conf with the following contents (see the Cheat Sheet):

[logging]
Sailfish.eas=d
Sailfish.easnetwork=d
Sailfish.easwbxml=d
Sailfish.logfile=/var/tmp/eas.log

This will store the logs at /var/tmp/eas.log for later checking. The log will contain a lot of data, including potentially the contents of messages, so please don’t post the file here. You should probably also delete the log periodically to avoid it getting too large.

However, if you experience the problem this will allow you to look back through the logs to potentially identify anything unusual (e.g. error messages) that might hint at what the issue is. If you could post that here, removing any personal info, that would be useful.

Don’t worry if you’re not in a position to do this, but if you can, it would be great.

1 Like

I can try and do this but my tech skills are a bit rusty! I was a linux dev around 30 years ago so some of this will still make sense to me, but probably not a lot. I assume the file “.config/blah/blah” is a hidden file in the user home directory so I don’t need root permission to create it? If I just create it with a text editor I also assume it will end up with the right permissions, ownership, etc?

Yes, what you write sounds correct on all fronts. I’ve only just started looking in to this properly, so it may be that I can make headway without any need for more info. If you prefer to wait therefore and see how that pans out, and I’ll get back to you if I really do need to know more, then that’s fine as well.

OK, so done some more testing here. I’m based at home pretty much all of the time at the moment because of the UK lockdown. Therefore my phone is almost always on wireless and not mobile data. For the last few days I have had wireless switched off and exclusively used the phone on mobile data. During this period I have not had a single email synchronisation failure whereas I would usually have three or four per day requiring a phone re-boot to fix. So, some progress here. There’s nothing wrong with my wireless network - it up 24 x 7, my iphone, my wife’s iphone, ipad, deaktop, etc all use it without problem. My Sailfish phone appears to use it without a problem on web sites, etc and email (when it works!). Next step is to disable mobile data and leave the phone purely on wireless for a few days and see if the issue returns …

Now I’ve had the phone on wireless for two days with mobile data disabled … and again I’ve had no synchronisation problems during this period. I did have one ‘Connection timeout’ error message but using the ‘Update’ on the pulley menu removed this message and the account synchronised fine - no reboot required. So … it seems that the EAS sync process is fine when kept on one network, even when there are dropouts, but it can’t seem to cope with switching from Wireless to mobile data or vice versa reliably every time. My phone was reflashed to 4.0.1.48 this morning, so I’m now going to enable both wireless and mobile data on the reflashed phone to see what happens and if it goes back to the repeated ‘Sync Error’ problems…