Can sync framework be used to immediately propagate changes to files when they occur? RRS feed

  • Question

  • By looking at the sync framework it looks like changes are detected by looking at a old snapshot that contains information about the file metadata. 

    Can this be used to detect changes and propagate those immediately? I am expecting that I can run into performance problems. Thoughts?



    Wednesday, November 10, 2010 3:18 PM

All replies

  • Hi, Teresa.

    The request for synchronization is performed outside of the synchronization process itself, by your application for example. If you know who modifies the files (if it's your application), then you can request a sync as soon as you are done editing the files. This will ensure changes are propagated as they are made, and will have good performance I assume.

    The other way is to have some application "watch" the files and as soon as it detects that something changed request a sync, but this will bring big performance problems as you said.

    Did you consider the periodical syncs option (like sync every 10-15 minutes)? Can you provide us with some more information about your specific scenario? We have a tool called SyncToy which performs file synchronization.


    Wednesday, November 10, 2010 7:57 PM
  • Hi Adrian,

    Thanks for your reply.

    If I understand correctly by default the changes detection occurs everytime at the start of the synchronization session.

    It seems that I can use something like a filter driver to detect changes at the file system level and if changes are detected I can do the file synch disabling the default change detection mechanism. Does this workaround make sense or do you have any other suggestions?




    Thursday, November 11, 2010 3:12 AM
  • Hi.

    Yes, that is correct - the change detection step is part of the synchronization process.

    May I know why the option of periodical synchronization does not suit your needs? If there is nothing to sync (i.e. no changes), the sync session wil last an insignificant amount of time.



    Thursday, November 11, 2010 6:38 PM