1

We have transactional replication between two MS SQL Server 2008 R2.

Our servers were rebooted because of failure of a hard drive.
Replication automatically continued working. But in an hour after we received such error:

   The subscription(s) have been marked inactive and must be reinitialized. NoSync subscriptions will need to be dropped and recreated.

Log Reader agent works and sends transactions to distributor. But distributor stopped being able to synchronize with subscriber.

Also Subscriber allowed to send changes to distributor. All conflicts resolved by distributor.

We want to know if it is another way to make replication works except of reinitializing subscription?

We discovered that this error probably was not in disk failure.
We added new foreign keys:

So it was:

Publisher  Table1 Table2 Table3
Subscriber Table1 Table2 Table3

Table1 and Table2 were in replication. Table3 - not.
We added foreign key Table2_Table3 on each - Publisher and Subscriber.

And after this we began to receive errors as we described in the our comment to @Remus Rusanu answer.

arena-ru
  • 990
  • 2
  • 12
  • 25

1 Answers1

0

What error did the distributor agent report? The error will be visible in the subscription details of the Replication Monitor. You can also look for the error yourself in MSrepl_errors:

contains rows with extended Distribution Agent and Merge Agent failure information. This table is stored in the distribution database.

Remus Rusanu
  • 288,378
  • 40
  • 442
  • 569
  • We have errors on Subscriber DB in conflict of instructions delete and foreign key on table that is not under replication. Also we didn't force and delete operations. All delete operations were initialized replication itself, probably for resolving conflicts. – arena-ru Dec 16 '10 at 11:17