Hi all,
I have a scenario with a transactional replication with queued subscriber updates. The system is designed for constant communication, but it's expected that the subscriber might sometimes lose network connections, so the updates must be queued.
It's entirely possible that certain records could be updated at the publisher and subscriber during one of these offline periods. When the connection comes back online, I want any conflicts to be immediately resolved in favor of the publisher. That is, any conflicting records in the subscriber to be immediately overwritten by the records in the publisher in case of conflict. They can be logged, but I don't want them to be reported as conflicts and hanging. The application specs are that this must happen without user intervention.
In my testing I haven't been able to get this to happen. My publication has @conflict_policy = 'pub wins'; however, when I create a disconnect between databases, insert conflicting records into a single table, and then restore the connection, I see the conflict in the Conflict Viewer, but the records themselves stay mismatched.
How do I force the conflict resolution policy to happen automatically? Thanks.