Hi
I'm new a replication so don't smile about it ;-)
We've got a replication with Updateables Subscribers running under SQL2012.
One DB is replication in 8 targets in the same Instance, local distributor.
Sometimes updates on a bit field are not replicated.
The strange thing is, the update runs fine in the most subscriber DBs, but fails in others. Even worse, the failing DBs arn't the same one all the time.
The replication Monitor delivers no errors :-(
I'm now trying to trace the statements. The result for a correct replication should be something like this:
Statement run on publishing DB at 19:23:01
Statement arrived in Distributor at 19:23:30
Statement arrived in Subscriber DB 1 at 19:23:45
Statement arrived in Subscriber DB 2 at 19:23:45
...
Statement arrived in Subscriber DB 7 at 19:23:47
For replications that fail, I guess something like this will drop out
Statement run on publishing DB at 19:23:01
Statement arrived in Distributor at 19:23:30
Statement arrived in Subscriber DB 1 at 19:23:45
...
Statement arrived in Subscriber DB 7 at 19:23:47
with Subscriber DB 3 missing.
When I run the statement:
se [distribution]
select top 10
D.publisher_DB,A.article,
T.*,
CAST(SUBSTRING(command, 7, 8000) AS NVARCHAR(MAX)) as Statememt
from
MSrepl_transactions T,
MSrepl_commands C,
[MSpublisher_databases] D,
[dbo].[MSarticles] A
where C.publisher_database_id = T.publisher_database_id
and D.id = C.publisher_database_id
and A.publication_id = T.publisher_database_id
and A.article = 'xxx'
I get information about which statements are distributet, right?
Is there a way to 'join' this statements with the statements that run in the publisher and subscriber DB, via LSN or something like this.
Thx
Christian