Outlook->Google directional sync doesn't delete cancelled recurring meeting instances
See original GitHub issueOGCS Version: v2.8.3
Edition: Portable
Sync Direction: O->G
Bug Description
When a recurring series is created in Outlook, and then one item of the series is moved and made an exception, and then it gets cancelled by originator - the cancellation doesn’t propagate to Google, because the exception doesn’t match the event. I can’t attach the sync log due to some sensitive info in it, but I can paste the relevant parts where the problem shows up Here:
2020-03-24 18:04:51,780 FINE 6 OutlookGoogleCalendarSync.OutlookOgcs.Calendar [0] - GetSummary - not all day event
2020-03-24 18:04:51,781 DEBUG 6 OutlookGoogleCalendarSync.Recurrence [0] - 18/09/2018 8:15 (R) => "Whatever weekly sync"
2020-03-24 18:04:51,782 DEBUG 6 OutlookGoogleCalendarSync.Recurrence [0] - This is a recurring appointment with 93 exceptions that will now be iteratively compared.
2020-03-24 18:04:51,788 FINE 6 OutlookGoogleCalendarSync.Recurrence [0] - Exception is deleted and outside date range being synced: 17/09/2018
2020-03-24 18:04:51,808 FINE 6 OutlookGoogleCalendarSync.Recurrence [0] - Exception is deleted and outside date range being synced: 24/09/2018
2020-03-24 18:04:51,876 FINE 6 OutlookGoogleCalendarSync.Recurrence [0] - Exception is outside date range being synced: 26/09/2018
2020-03-24 18:04:51,894 FINE 6 OutlookGoogleCalendarSync.Recurrence [0] - Exception is deleted and outside date range being synced: 01/10/2018
2020-03-24 18:04:51,962 FINE 6 OutlookGoogleCalendarSync.Recurrence [0] - Exception is outside date range being synced: 09/10/2018
2020-03-24 18:04:52,038 FINE 6 OutlookGoogleCalendarSync.Recurrence [0] - Exception is outside date range being synced: 16/10/2018
2020-03-24 18:04:52,111 FINE 6 OutlookGoogleCalendarSync.Recurrence [0] - Exception is outside date range being synced: 23/10/2018
2020-03-24 18:04:52,129 FINE 6 OutlookGoogleCalendarSync.Recurrence [0] - Exception is deleted and outside date range being synced: 29/10/2018
...
2020-03-24 18:04:59,555 FINE 6 OutlookGoogleCalendarSync.Recurrence [0] - Exception is outside date range being synced: 17/03/2020
2020-03-24 18:04:59,574 DEBUG 6 OutlookGoogleCalendarSync.Recurrence [0] - Finding Google instance for deleted Outlook exception:-
2020-03-24 18:04:59,575 DEBUG 6 OutlookGoogleCalendarSync.Recurrence [0] - Original date: 23/03/2020
2020-03-24 18:04:59,576 DEBUG 6 OutlookGoogleCalendarSync.Recurrence [0] - Google exception event is not cached. Retrieving all recurring instances...
2020-03-24 18:04:59,576 DEBUG 6 OutlookGoogleCalendarSync.GoogleOgcs.Calendar [0] - Retrieving all recurring event instances from Google.
2020-03-24 18:05:00,152 DEBUG 6 OutlookGoogleCalendarSync.GoogleOgcs.Calendar [0] - Page 1 received.
2020-03-24 18:05:00,457 DEBUG 6 OutlookGoogleCalendarSync.GoogleOgcs.Calendar [0] - Page 2 received.
2020-03-24 18:05:00,777 DEBUG 6 OutlookGoogleCalendarSync.GoogleOgcs.Calendar [0] - Page 3 received.
2020-03-24 18:05:00,997 DEBUG 6 OutlookGoogleCalendarSync.Recurrence [0] - No matching Google Event recurrence found.
2020-03-24 18:05:00,998 DEBUG 6 OutlookGoogleCalendarSync.Recurrence [0] - The Outlook appointment is deleted, so not a problem.
The wrong part is this:
2020-03-24 18:04:59,575 DEBUG 6 OutlookGoogleCalendarSync.Recurrence [0] - Original date: 23/03/2020
The original date is no longer interesting, because the event has already been made an exception and moved to a different date. Thus the comparison is expected to fail, because in Google the event is already on a new date.
Steps to Reproduce the Issue
- Use Outlook --> Google sync.
- Use another “Master” Outlook to create events that would be accepted on the “Synced” Outlook that is running sync.
- Create a recurring series of events in Master Outlook with weekly recurrence. Accept in Synced Outlook. Make sure the series appear on Google.
- Take one event in the series on Master Outlook and move it to a different date. Accept in Synced Outlook. Make sure the event is updated in Google (sometimes doesn’t happen - another bug).
- Cancel this event in Master Outlook, accept (deletion) in Synced Outlook.
- Observe the Google event not being deleted.
Any other information
Sorry, couldn’t attach the log. Sensitive information.
Issue Analytics
- State:
- Created 3 years ago
- Reactions:1
- Comments:6 (3 by maintainers)
Thank you Paul, now with your explanation it makes sense to me as well. I think it falls into the pattern I’ve observed, and now with sync going enough backwards it has indeed been taken care of, as the occurrences of an exception to a recurring meeting being dragged into the future over 2 weeks time are extremely rare, and when the range was -3 days it was very common to fall out of it.
I’m very glad this was eventually figured out and resolved. The workaround seems to be working well enough to cover the vast majority of the cases. Thanks for documenting the limitation, I’m sure it might be of help to others in the future.
Thanks a lot! William.
On Sun, Jun 14, 2020 at 8:50 PM Paul Woolcock notifications@github.com wrote:
OK, that now makes sense and I don’t think there is any point in trying the v2.8.3.18.
This only affects recurring items where the original date of exception item has fallen out of they sync window (too far in the past), the newly scheduled date for it is still in scope but the organiser has then cancelled it.
In this scenario, because the exception is deleted, Outlook only stores the original date - there is no other information available to use! Therefore OGCS sees it as out of scope for sync and doesn’t do anything. It’s a limitation of Outlook and nothing I can do about it…aside from record it as a limitation.
Extending the sync window further in the past is the only workaround here 👍