Thursday, March 8, 2012

Can't re-submit a deleted conflicted row

Hello,
I have a merge replication which use identity range management (for some
tables).
I have a table that inserted a row on the publisher and tried to transfer it
to subscriber. The subscriber got an error when trying to insert it (by the
way, I use MSDE on subscriber and MSmerge_contents and MSmerge_tombstone are
huge and the DB limit of 2 GB arrive fast - it was nice that the system
tables are not included in the 2 GB limit... I decided to move that 2 tables
in another DB and it works nice). As I said, the subscriber gave an error
(different reasons) and the conflict resolver decided to delete the row from
publisher, because it can't insert in on subscriber !?! Anyway seems to be ok
because the row i have in conflict viewer, that seems that I can re-insert
it. But when I try to re-insert it, it gave me an error because the identity
ranges changed and the old value (of deleted row) is not proper for the new
constraints of identity... I supposed that SQL will deactivate the
constraint, as it does during replication...
Any ideea how to re-insert it? Or I have to "manually" (programatically)
de-activate it, insert it from conflict table and re-activate it?
Thanks for any suugestion.
Catalin
Hello Catalin,
I have something for you. I've tried reaching you through phone or email,
without success. Email me at chris lafrance at h_tm__l dot com.
Cheers
"Catalin NASTAC" wrote:

> Hello,
> I have a merge replication which use identity range management (for some
> tables).
> I have a table that inserted a row on the publisher and tried to transfer it
> to subscriber. The subscriber got an error when trying to insert it (by the
> way, I use MSDE on subscriber and MSmerge_contents and MSmerge_tombstone are
> huge and the DB limit of 2 GB arrive fast - it was nice that the system
> tables are not included in the 2 GB limit... I decided to move that 2 tables
> in another DB and it works nice). As I said, the subscriber gave an error
> (different reasons) and the conflict resolver decided to delete the row from
> publisher, because it can't insert in on subscriber !?! Anyway seems to be ok
> because the row i have in conflict viewer, that seems that I can re-insert
> it. But when I try to re-insert it, it gave me an error because the identity
> ranges changed and the old value (of deleted row) is not proper for the new
> constraints of identity... I supposed that SQL will deactivate the
> constraint, as it does during replication...
> Any ideea how to re-insert it? Or I have to "manually" (programatically)
> de-activate it, insert it from conflict table and re-activate it?
> Thanks for any suugestion.
> Catalin

No comments:

Post a Comment