Adds a stored procedure for the manual cleanup of the change tracking side table in SQL Server

Applies to: SQL Server 2014 DeveloperSQL Server 2014 EnterpriseSQL Server 2014 Enterprise Core More

This update adds a new stored procedure that enables you to manually clean up the side table (change_tracking_objectid) in a database on which the change tracking is enabled.

Syntax

sp_flush_CT_internal_table_on_demand [ @TableToClean= ] 'TableName'

Arguments

[@TableToClean= ] 'TableName' is the name of the table, for which change tracking is enabled. The backlogs are left for the automatic cleanup by change tracking.

Expected output

When you run the stored procedure, one of the following scenarios happens:
  • If the table doesn't exist or if change tracking isn't enabled, appropriate error messages will be thrown.
  • This stored procedure will call another internal stored procedure that cleans up contents from the change tracking side table that's based on the invalid cleanup version by using the sys.change_tracking_tables dynamic management view. When it's running, it will show the information of total rows deleted (for every 5000 rows).

Resolution


Service pack information for SQL Server

This update is fixed in the following service packs for SQL Server:

SQL Server 2016 Service Pack 1

Service Pack 3 for SQL Server 2014

Service Pack 4 for SQL Server 2012

Reference


For more information about change tracking cleanup, see Change Tracking Cleanup (Part 1) and Change Tracking Cleanup (Part 2).