Microsoft KB Archive/324563

= FIX: If You Use the sp_reinitmergesubscription Stored Procedure with @UPLOAD_FIRST Set to TRUE Data Loss May Occur for SQL Server CE Subscribers =

Article ID: 324563

Article Last Modified on 9/27/2005

-

APPLIES TO


 * Microsoft SQL Server 2000 Standard Edition
 * Microsoft SQL Server 2000 Windows CE Edition 2.0

-



This article was previously published under Q324563





SYMPTOMS
If a publication that has Microsoft SQL Server 2000 Windows CE Edition (SQL Server CE) subscribers is marked for reinitialization at the publishing server, the SQL Server CE subscribers may experience data loss and non-convergence, or both, if the following conditions are satisfied:
 * The SQL Server CE subscriber was marked for reinitialization at the publishing server with the sp_reinitmergesubscription merge replication system stored procedure, and the @UPLOAD_FIRST argument is set to TRUE.
 * The SQL Server CE subscriber does not have any changes to upload to the publisher.

A SQL Server CE subscriber that experiences this problem may not be able to upload changes to the publisher during later synchronization sessions.



CAUSE
The merge replication reconciler is sending incorrect information to the SQL Server CE subscriber. SQL Server CE uses the incorrect information to initialize one of the merge replication system tables on the SQL Server CE device. The incorrect value causes the SQL Server CE subscriber to skip the changes instead of enumerating and uploading the changes to the publisher.



RESOLUTION
To resolve this problem, obtain the latest service pack for Microsoft SQL Server 2000. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

290211 INF: How To Obtain the Latest SQL Server 2000 Service Pack

NOTE: The following hotfix was created before the release of Microsoft SQL Server 2000 Service Pack 3.

The English version of this fix has the file attributes (or later) that are listed in the following table. The dates and times for these files are listed in coordinated universal time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time tool in Control Panel.      Date         Time        Version     Size            File name

06-14-2002  9:39:16 PM   8.00.645   303,688 bytes   Replrec.dll Note Because of file dependencies, the most recent hotfix or feature that contains the files may also contain additional files.



WORKAROUND
To work around this problem, you can use either of these two methods:
 * Mark the subscription for reinitialization, programmatically, from the SQL Server CE application by using the ReinitializeSubscription method of the SQL Server CE Replication Object with the UploadBeforeReInit parameter set to TRUE. After you call the ReinitializeSubscription method, the application must call the Initialize, Run, and Terminate methods to download a new subscription of the publication to the SQL Server CE device that is based on the latest snapshot. -or-


 * If a publication that has SQL Server CE subscribers is marked for renitialization, do not synchronize the SQL Server CE device with the publisher unless it has changes to upload.



STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article.

This problem was first corrected in Microsoft SQL Server 2000 Service Pack 3.

Additional query words: reinitialize

Keywords: kbbug kbfix kbsqlserv2000presp3fix kbqfe kbhotfixserver KB324563

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.