SQL Server stored procedure custom conflict resolver adds "0x00" to conflicting columns

Ισχύει για: Microsoft SQL Server 2005 Standard EditionMicrosoft SQL Server 2005 Standard X64 EditionMicrosoft SQL Server 2005 Enterprise Edition


Consider the following scenario:
  • You configure merge replication in Microsoft SQL Server 2008 R2, in Microsoft SQL Server 2008, or in Microsoft SQL Server 2005.
  • The publication contains a table article.
  • The table article contains columns of data type varchar or nvarchar.
  • You configure the table article to use a stored procedure custom conflict resolver.
In this scenario, no error is returned. However, the stored procedure custom conflict resolver adds "0x00" or "\0" to the end of the strings in the varchar and nvarchar columns that are involved in the conflict. Additionally, there is no non-convergence. Therefore, both columns of data are affected.

Note The columns of data type varchar or nvarchar do not have to be involved in the conflict. For example, this issue can occur if a column of data type INT contains the conflicting change.


This issue occurs because the merge replication reconciler adds 0x00" or "\0" after the data is retrieved from the stored procedure.

Note The stored procedure returns the correct data.


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