Conflict Resolution over WCF synchronization RRS feed

  • Question

  • Hi all,

    I m trying to implement a scenario that retrieves changes from source to apply into destination database. Source changes are provided by WCF service. For conflict scenarios, as i read from papers i cant use itemConflicting event because of WCF service. Arguments of this event is not serializable. When i tried to use ApplyChangeFailed event, continue or retryyWithForce actions do not effects Statistics. On the other hand conflicted row is sent again when replication direction reversed. How can i apply merge replication for row versions on WCF based data synchronization?

    Wednesday, November 28, 2012 8:49 AM

All replies

  • which providers are you using?

    and what exactly do you mean by merge replication for row versions?

    Wednesday, November 28, 2012 12:44 PM
  • sorry for missing information,

    i am using SqlSyncProvider at both sites.

    At source (remote provider),

    I have implemented CustomDBProvider that inherited from KnowledgeSyncProvider to interact with source site. CustomDBProvider calls wcf service functions and wcf service uses SqlSyncProvider.

    At destination (my local provider) is SqlSyncProvider.

    Should i change my providers as KnowledgeSyncProvider ?

    In current condition conflict detected at destination site but when i reversed source and destination, conflicted change is sent again.

    How can i solve that problem?

    Wednesday, November 28, 2012 12:55 PM
  • by the way my replication direction is always "download"
    Wednesday, November 28, 2012 12:55 PM
  • and retry with force write doesn't apply the change?

    Wednesday, November 28, 2012 1:02 PM
  • i tried to say merge versions of conflicted row to prevent sending again same data if source win is applied.
    Wednesday, November 28, 2012 1:05 PM
  • retry with force applies change, it is ok. But in this case i ve applied source change to destination with forcing.

    When i tried to synchronize again with reversing source and destination sites, forced data is sent to owner again.

    On the other hand if i choose 'continue' as action, it does not affect statistics. Statistics says that conflicted row is applied to database, but i have choose the continue option.

    Wednesday, November 28, 2012 1:11 PM
  • I thought you said sync direction is download only? what's with reversing the source and destination?
    how did you confirm the forced data is sent to its source again?

    • Edited by JuneT Wednesday, November 28, 2012 1:21 PM
    Wednesday, November 28, 2012 1:20 PM
  • Yes it is download only but, another synchronization session can occur reversing source and destination databases. In this session "download" option is used again. My architecture depends on pulling data from source with only download option.
    Wednesday, November 28, 2012 1:24 PM
  • when you reverse the sync direction, are you using the same scope name?
    Wednesday, November 28, 2012 1:34 PM
  • yes every database has only one scope
    Wednesday, November 28, 2012 1:36 PM
  • Is it true behaviour of Sync Framework, or am i doing something wrong ? Can anyone help me ?
    Thursday, November 29, 2012 7:29 AM
  • nope, sync fx should not be echoing back what was just uploaded by the same client.

    as i have mentioned, how did you confirm it was actually sending back the same changes?

    Monday, December 3, 2012 3:37 AM