1

I have 2 SQL Server instances where I use merge replication on a database. A developer accidentally inserted data to both the subscriber and publisher at the same time. Now I have data in both databases but with different rowguids.

Q: Can I delete those rows with different rowguids from the subscriber and the rows in the publisher remain untouched? If so, will the rows from the publisher replicate back to the subscriber but now with the same rowguid?

1

If the same logical row has two different rowguid values at publisher and subscriber, then you're having a conflict.

Changes are replicated using the rowguid column, so different rowguid means different rows as far as replication is concerned. You can safely delete the duplicate row at the subscriber and the changes won't be replicated to the publisher (the row with a matching rowguid is not present at the publisher due to the upload conflict).

Once the row is deleted at the subscriber, the merge agent will be able to insert at the subscriber the row from the publisher.

  • Thank you for your help. I understand that with MERGE replication it doesn't matter if you delete from the publisher or subscriber but I deleted from the subscriber. After I deleted, the next time replication ran, the publisher pushed over the rows back into the subscriber database but with the same rowguid this time. 0 conflicts now. :) – Aaron Hurst Dec 3 '15 at 20:21
0

Merge Replication is bi-directional by default so if you delete a row at the Subscriber, that change will replicate and the same row will be deleted at the Publisher, and vice versa.

  • Is this true even though they have different rowguid? – Aaron Hurst Dec 2 '15 at 15:37
  • Merge Replication uses the rowguid column to uniquely identify every row in every published table. If you delete a row on the Subscriber with a specific rowguid, that same row with that rowguid will be deleted on the Publisher. Make sense? – Brandon Williams Dec 2 '15 at 17:54
  • Thank you for your help Brandon. I understand what you're saying. In my case my rows had different rowguid which was causing conflicts. – Aaron Hurst Dec 3 '15 at 20:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.