FIX: Change Tracking incorrect current versions in database snapshots in SQL Server 2008 R2

Se aplică la: SQL Server 2008 R2 Service Pack 2SQL Server 2008 R2 DatacenterSQL Server 2008 R2 Developer

Symptoms


Consider the following scenario:
  • You use database mirroring in Asynchronous high-performance mode in Microsoft SQL Server 2012 R2.
  • You enable Change Tracking on the Principal database.
  • You create a database snapshot on the Mirror database.
  • You use CHANGE_TRACKING_CURRENT_VERSION() function on the database snapshot to check the version that is associated with the last committed transaction.
In this scenario, the returned value of CHANGE_TRACKING_CURRENT_VERSION() function is incorrect. It is either 0 or lower than the value returned from the Principal database.

Cause


The issue occurs because of a defect related with function processing on a database snapshot. CHANGE_TRACKING_CURRENT_VERSION() function returns incorrect values on the database snapshot.

Resolution


The issue was first fixed in the following cumulative update of SQL Server.

After you apply the hotfix, SQL Server will change the CHANGE_TRACKING_CURRENT_VERSION() function logic. The returned value of CHANGE_TRACKING_CURRENT_VERSION() function on the database snapshot will be correct.

Cumulative Update 11 for SQL Server 2008 R2 SP2

Status


Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.