Walkthrough Publisher, Distributor, Subscriber in AlwaysOn Availability Groups

UPDATE: 4/10/2020 The steps below walk through setting SQL Server 2016 Replication Publisher, Distributor, and Subscriber each in an Always On Availability Group with one set of replicas residing one 1 subnet and 2nd set on another subnet simulating 2 different data centers (Pub1, Dist1, Sub2) <–> (Pub2, Dist2, Sub2). More Information: Configure replication with
Read More »

Customizing Distribution Agent Stored Procedures

You may have the need to customize the stored procedures used by the Distribution Agent to apply changes to the Subscriber. For example, if in your particular environment replicated DELETEs often fails with “Row not found” error, by now you’ve most likely change the Distribution Agent to use the “Continue on Errors” Profile or added
Read More »

not been designated as a valid Publisher

Today while walking customer through Replication + Always On combination we encountered various errors like Msg 14080, Level 11, State 1, Procedure sp_MSvalidate_distpublisher, Line 17 [Batch Start Line 0] The remote server “SQL502” does not exist, or has not been designated as a valid Publisher, or you may not have permission to see available Publishers.
Read More »

change_tracking_hardened_cleanup_version not incrementing in SQL 2014 SP3

When running manual SQL 2014 SP3 Change Tracking sp_flush_commit_table_on_demand you observe change_tracking_hardened_cleanup_version is not moving forward and syscommittab table not being cleaned up even though auto-clean is enabled. Executing: sp_flush_commit_table_on_demand 1000     The value returned by change_tracking_hardened_cleanup_version() is 1133436.     The value returned by safe_cleanup_version() is 1850878. Executing: sp_flush_commit_table_on_demand 1000     The
Read More »

Msg 21892, Level 16, State 1

ecently I posted Repltalk a walkthrough setting up Publisher, Distributor, and Subscriber each in AlwaysOn Availability groups. In this series of postings, I’m going to break then, show you what went wrong, and how to fix it. Let’s start with error message when attempting to validate a redirected publisher. USE distribution; GO DECLARE @redirected_publisher sysname;
Read More »