This article may turn out helpful in resolving persistent issues in Google sync.
It is known that sometimes, even though the actual calendar sync is pulling the appointments from the server to the database in the phone, these appointments do not appear in Sailfish Calendar. Likewise, the contact sync may not do its job.
The following is a kind of reset of the sync utility. It does not do any harm to the appointments or contacts.
1) You will need the Developer mode and the SSH password. Do as instructed in this help article.
2) Delete the Google account from your phone (Settings > Accounts).
DELETING SYNC STATE FILES
Delete the sync state files of calendar and contacts (respectively) with the commands below. Note that depending on the name of the primary user of your phone, you must replace "<user>" either by "nemo" or by "defaultuser" (*). Then execute the commands.
devel-su ## You will need your SSH pasword here.
## Check first what there is:
ls -al /home/<user>/.local/share/system/privileged/Sync/
# Delete two initialisation files (if they exist) related to Google sync: rm -i /home/<user>/.local/share/system/privileged/Sync/gcal.ini rm -i /home/<user>/.local/share/system/privileged/Sync/gcontacts.ini
CHECKING THE SERVER
It is good to visit calendar.google.com and contacts.google.com at this point, using a computer browser, and check how it looks there. Eliminate potential duplicates and other deviations from the normal.
Sign in to your Google account again at Settings > Accounts.
The next sync should be a "clean sync" which should pull in all of the events from the server.
Trigger a sync cycle by opening up "Settings > Accounts". Then long-tap the account to be synced. Tap "Sync" in the pop-up menu.
This article explains how to collect logs concerning the sync of various accounts.
(*) How to check which one is valid?
- Open the Terminal app
- see the prompt - it has either "defaultuser" or "nemo"