Page MenuHomePhorge

Avoid Sync unnecessary FolderSync interaction
AbandonedPublic

Authored by mollekopf on Jan 19 2021, 10:19 AM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Mar 19, 7:48 PM
Unknown Object (File)
Sun, Mar 17, 8:31 PM
Unknown Object (File)
Sun, Mar 3, 9:35 AM
Unknown Object (File)
Feb 11 2024, 11:52 AM
Unknown Object (File)
Jan 21 2024, 11:53 AM
Unknown Object (File)
Jan 18 2024, 6:05 AM
Unknown Object (File)
Jan 2 2024, 11:04 PM
Unknown Object (File)
Dec 21 2023, 11:40 AM
Subscribers
None

Details

Summary

Instead of reporting a hierarchy change, skip the folder and let the
client know that the folder no longer exists.

If we remove a folder on the server-side that cannot be removed on the
client-side we used to end up in an endless loop:

  • Sync reports hierarchy change
  • FolderSync fails
  • Sync reports hierarchy change
  • ...

Simply reporting that the folder has been removed seems like a less
aggressive approach that is in line with the protocol and works better
with Outlook (and should achieve the same as long as the client doesn't
ignore the STATUS_OBJECT_NOT_FOUND status code).

Diff Detail

Repository
rS syncroton
Branch
master
Lint
No Lint Coverage
Unit
No Test Coverage
Build Status
Buildable 32791
Build 12712: arc lint + arc unit

Event Timeline

mollekopf created this revision.

Wouldn't global STATUS_FOLDER_HIERARCHY_HAS_CHANGED status be more appropriate? Or this does not work with Outlook?

mollekopf retitled this revision from Instead of silently skipping folders, tell the client that it no longer exists. to Avoid Sync unnecessary FolderSync interaction.
mollekopf edited the summary of this revision. (Show Details)

The previous patch was inclomplete as it built on another one, this is the full version.

Avoid unnecessary Sync <-> FolderSync interaction

Instead of reporting a hierarchy change, skip the folder and let the
client know that the folder no longer exists.

If we remove a folder on the server-side that cannot be removed on the
client-side we used to end up in an endless loop:

  • Sync reports hierarchy change
  • FolderSync fails
  • Sync reports hierarchy change
  • ...

Simply reporting that the folder has been removed seems like a less
aggressive approach that is in line with the protocol and works better
with Outlook (and should achieve the same as long as the client doesn't
ignore the STATUS_OBJECT_NOT_FOUND status code).

Removed comment that no longer applies