Calender Events are deleted after sync
I've recently given SailfishOS another spin, but stumbled on a rather serrious problem for me:
Build: 2.1.4.14 (Lapuanjoki) Comunity Build on Moto G 2014 (titan)
Description: I use davmail (http://davmail.sourceforge.net/) to access Emails, Calendars and Contacs on an MS-Exchange Server. In Essence, davmail is a Gateway between Microsoft Exchange Web Services and IMAP/CalDav/CardDav.
When a new Calendarevent is created, it is send to the Server and shows up on OWA. But after a manual or automatic Sync Sailfish seems to delete the Event in the Calenderapp and the Server!
Steps to reproduce: 1) Create Event (tried different times, names and calendars) 2) Wait til it shows up in OWA after a couple of seconds 3) Sync the Calender => Event disappears in OWA and Calendar App
Logs and what i have found out so far According to the Logs, an event is succesfully sent to the sever and after a sync sent back to the device.
journalctl -fa during sync
Apr 17 13:39:50 Sailfish caldav-client[23854]: [D] unknown:0 - "Unexpected reply signature: got \"\", expected \"a{sv}\""
Apr 17 13:39:50 Sailfish caldav-client[23854]: [D] unknown:0 - connection-manager.cpp 106 setupSocketConnection p2p error: QDBusError("org.freedesktop.DBus.Error.FileNotFound", "Failed to connect to socket /run/user/100000/signond/socket: No such file or directory") 1
Apr 17 13:39:50 Sailfish caldav-client[23854]: [D] unknown:0 - connection-manager.cpp 132 init Peer connection unavailable, activating service
Apr 17 13:39:50 Sailfish dbus-daemon[1699]: Activating service name='com.google.code.AccountsSSO.SingleSignOn'
Apr 17 13:39:50 Sailfish caldav-client[23854]: [D] unknown:0 - identityimpl.cpp 96 updateState Updating state: "PendingRegistration" SignOn::IdentityImpl(0x1a51e48)
Apr 17 13:39:50 Sailfish caldav-client[23854]: [D] unknown:0 - authsessionimpl.cpp 94 initInterface
Apr 17 13:39:50 Sailfish caldav-client[23854]: [D] unknown:0 - authsessionimpl.cpp 94 initInterface
Apr 17 13:39:50 Sailfish [23687]: signondaemon.cpp 388 init Failed to SUID root. Secure storage will not be available.
Apr 17 13:39:50 Sailfish dbus-daemon[1699]: Successfully activated service 'com.google.code.AccountsSSO.SingleSignOn'
Apr 17 13:39:50 Sailfish caldav-client[23854]: [D] unknown:0 - connection-manager.cpp 150 init Connected to "libsignon-qt1"
Apr 17 13:39:50 Sailfish caldav-client[23854]: [D] unknown:0 - identityimpl.cpp 96 updateState Updating state: "Ready" SignOn::IdentityImpl(0x1a51e48)
Apr 17 13:39:50 Sailfish caldav-client[23854]: [D] unknown:0 - identityimpl.cpp 96 updateState Updating state: "NeedsUpdate" SignOn::IdentityImpl(0x1a51e48)
Apr 17 13:39:50 Sailfish caldav-client[23854]: [D] unknown:0 - identityimpl.cpp 96 updateState Updating state: "PendingUpdate" SignOn::IdentityImpl(0x1a51e48)
Apr 17 13:39:50 Sailfish caldav-client[23854]: [D] unknown:0 - identityimpl.cpp 442 infoUpdated SERVER INFO UPDATED. NeedsUpdate " 42 "
Apr 17 13:39:50 Sailfish caldav-client[23854]: [W] unknown:0 - sqlitestorage.cpp: 193 - database "/home/nemo/.local/share/system/privileged/Calendar/mkcal/db" opened
Apr 17 13:39:51 Sailfish caldav-client[23854]: [D] unknown:0 - identityimpl.cpp 381 getInfoReply QMap(("ACL", QVariant(QStringList, ()))("AuthMethods", QVariant(QDBusArgument, ))("Caption", QVariant(QString, "Jolla"))("Id", QVariant(uint, 42))("Owner", QVariant(QStringList, ()))("Realms", QVariant(QStringList, ()))("RefCount", QVariant(int, 0))("StoreSecret", QVariant(bool, true))("Type", QVariant(int, 0))("UserName", QVariant(QString, "philipptorben.ruess@ekkw.de"))("UserNameSecret", QVariant(bool, false))("Validated", QVariant(bool, true)))
Apr 17 13:39:51 Sailfish caldav-client[23854]: [D] unknown:0 - identityimpl.cpp 96 updateState Updating state: "Ready" SignOn::IdentityImpl(0x1a51e48)
Apr 17 13:39:53 Sailfish caldav-client[23854]: [W] unknown:0 - sqlitestorage.cpp: 1672 - not loading "b087d000-f4aa-45d1-a80a-433c15bd0df8" "66bb61a0-1d7c-4a06-98f5-d3be54bf81e7" (local changes)
Apr 17 13:39:53 Sailfish dbus-daemon[1699]: Activating service name='org.nemomobile.calendardataservice'
Apr 17 13:39:53 Sailfish dbus-daemon[1699]: Successfully activated service 'org.nemomobile.calendardataservice'
Apr 17 13:39:53 Sailfish calendardataservice[23932]: [W] unknown:0 - sqlitestorage.cpp: 193 - database "/home/nemo/.local/share/system/privileged/Calendar/mkcal/db" opened
Apr 17 13:39:54 Sailfish calendardataservice[23932]: [W] unknown:0 - No transactionId, discarding results
Apr 17 13:39:54 Sailfish caldav-client[23922]: [D] unknown:0 - "Unexpected reply signature: got \"\", expected \"a{sv}\""
Apr 17 13:39:54 Sailfish caldav-client[23922]: [D] unknown:0 - connection-manager.cpp 150 init Connected to "libsignon-qt0"
Apr 17 13:39:54 Sailfish caldav-client[23922]: [D] unknown:0 - identityimpl.cpp 96 updateState Updating state: "PendingRegistration" SignOn::IdentityImpl(0x1bdcbb8)
Apr 17 13:39:54 Sailfish caldav-client[23922]: [D] unknown:0 - authsessionimpl.cpp 94 initInterface
Apr 17 13:39:54 Sailfish caldav-client[23922]: [D] unknown:0 - authsessionimpl.cpp 94 initInterface
Apr 17 13:39:54 Sailfish caldav-client[23922]: [D] unknown:0 - identityimpl.cpp 96 updateState Updating state: "Ready" SignOn::IdentityImpl(0x1bdcbb8)
Apr 17 13:39:54 Sailfish caldav-client[23922]: [D] unknown:0 - identityimpl.cpp 96 updateState Updating state: "NeedsUpdate" SignOn::IdentityImpl(0x1bdcbb8)
Apr 17 13:39:54 Sailfish caldav-client[23922]: [D] unknown:0 - identityimpl.cpp 96 updateState Updating state: "PendingUpdate" SignOn::IdentityImpl(0x1bdcbb8)
Apr 17 13:39:54 Sailfish caldav-client[23922]: [D] unknown:0 - identityimpl.cpp 442 infoUpdated SERVER INFO UPDATED. NeedsUpdate " 4 "
Apr 17 13:39:54 Sailfish caldav-client[23922]: [W] unknown:0 - sqlitestorage.cpp: 193 - database "/home/nemo/.local/share/system/privileged/Calendar/mkcal/db" opened
Apr 17 13:39:55 Sailfish caldav-client[23922]: [D] unknown:0 - identityimpl.cpp 381 getInfoReply QMap(("ACL", QVariant(QStringList, ()))("AuthMethods", QVariant(QDBusArgument, ))("Caption", QVariant(QString, "Jolla"))("Id", QVariant(uint, 4))("Owner", QVariant(QStringList, ()))("Realms", QVariant(QStringList, ()))("RefCount", QVariant(int, 0))("StoreSecret", QVariant(bool, true))("Type", QVariant(int, 0))("UserName", QVariant(QString, "philipp.ruess"))("UserNameSecret", QVariant(bool, false))("Validated", QVariant(bool, true)))
Apr 17 13:39:55 Sailfish caldav-client[23922]: [D] unknown:0 - identityimpl.cpp 96 updateState Updating state: "Ready" SignOn::IdentityImpl(0x1bdcbb8)
Apr 17 13:39:55 Sailfish calendardataservice[23932]: [W] unknown:0 - No transactionId, discarding results
Apr 17 13:39:55 Sailfish calendardataservice[23932]: [W] unknown:0 - No transactionId, discarding results
Apr 17 13:39:55 Sailfish calendardataservice[23932]: [W] unknown:0 - No transactionId, discarding results
Apr 17 13:40:00 Sailfish com.google.code.AccountsSSO.SingleSignOn[1699]: invoker: Invoking execution: '/usr/bin/signond'
To my untrained eye the line
Apr 17 13:39:53 Sailfish caldav-client[23854]: [W] unknown:0 - sqlitestorage.cpp: 1672 - not loading "b087d000-f4aa-45d1-a80a-433c15bd0df8" "66bb61a0-1d7c-4a06-98f5-d3be54bf81e7" (local changes)
seems suspicious. According to the Davmail Logs, the ID b087d000-f4aa-45d1-a80a-433c15bd0df8 is used by Davmail/Exchange for the Event. The ID 66bb61a0-1d7c-4a06-98f5-d3be54bf81e7 is nowhere to be found.
Greping the Logs for DELETE turned up the following:
2018-04-17 13:14:26,221 DEBUG [CaldavConnection-64762] davmail - Listing item 77/122
2018-04-17 13:14:26,250 DEBUG [CaldavConnection-64885] davmail - < DELETE /users/<removed>/calendar/Privat/AAMkADQzNTZkN2NkLTczOWQtNDA1NS1iZjVmLTNlMjQ2MmUxMjlkMgBGAAAAAABdcXU-px2CTruWyCTlaoTrBwBJGv6CkfQhT5RF8igThqRkAADLqIOUAABJGv6CkfQhT5RF8igThqRkAADYGhYhAAA=.EML HTTP/1.1
(just in case, this was from a previous test with a different Event (and EventID)
I guess my Question is, why does SFOS delete the Event and how can i stop that from happening?
Confirmed.
I reproduce it with import of F1 calendar from link: F1 calendar
After successful import, if I trigger sync, imported events are removed from local calendar, and not synced with remote version (google calendar).
branek ( 2018-04-21 22:48:33 +0200 )editare your evets uploaded to the server prior to syncing?
vorletzter ( 2018-04-23 18:16:41 +0200 )edit