CORRECTIF : fusion et réplication une non-convergence survient avec les abonnés SQL Server CE

Traductions disponibles Traductions disponibles
Numéro d'article: 867879 - Voir les produits auxquels s'applique cet article
Bogue #: 471602 (SHILOH_BUGS)
Microsoft distribue les correctifs Microsoft SQL Server 2000 le biais comme un fichier téléchargeable. Les correctifs étant cumulatifs, chaque nouvelle version contient tous les correctifs et tous les correctifs de sécurité qui étaient fournis avec le SQL Server 2000 précédente version du correctif.
Agrandir tout | Réduire tout

Sommaire

Symptômes

Lorsque deux tables sont publiées qui remplissent les conditions suivantes, les lignes de tableau correspondantes enfant qui sont associés le parent « prochains dans partition » modifications ne sont pas répliquées vers les abonnés Microsoft SQL Server CE :
  • La table parent contient un filtre dynamique sous-ensemble.
  • La table enfant est liée à la table parent à l'aide d'un filtre de jointure.
  • Les abonnés aux articles sont SQL Server CE abonnés.
  • Mises à jour sur la table parent et la table enfant provoquer la ligne sont hors de la partition, suivie d'autres mises à jour vers la table parent qui provoquent la ligne pour revenir dans partition.
Ce problème ne se produit pas avec les abonnés SQL Server. Consultez la section « Plus d'informations » pour obtenir un exemple illustrant le problème dans les détails.

Résolution

Informations sur le service pack

Pour résoudre ce problème, procurez-vous le dernier service pack Microsoft SQL Server 2000. Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
290211 Comment obtenir le dernier pack de service SQL Server 2000

Informations sur le correctif

La version anglaise de ce correctif dispose les attributs de fichier (ou attributs de fichier version ultérieure) répertoriés dans le tableau suivant. Les dates et heures de ces fichiers sont exprimées en temps universel coordonné (UTC). Lorsque vous affichez les informations de fichier, il est convertie en heure locale. Pour connaître le décalage entre l'heure UTC et l'heure locale, utilisez l'onglet Fuseau horaire dans l'outil Date et heure du Panneau de configuration.
   Date         Time   Version        Size     File name
   ------------------------------------------------------------------
   19-Jun-2004  00:51  2000.80.952.0    664,128  Autoplt.dll
   19-Jun-2004  00:51  2000.80.952.0     78,400  Console.exe
   19-Jun-2004  00:51  2000.80.952.0    315,968  Custtask.dll
   19-Jun-2004  00:51  2000.80.952.0     33,340  Dbmslpcn.dll
   08-Apr-2004  21:42                   786,432  Distmdl.ldf
   08-Apr-2004  21:42                 2,359,296  Distmdl.mdf
   10-Oct-2003  18:48                       180  Drop_repl_hotfix.sql
   19-Jun-2004  00:51  2000.80.952.0  1,905,216  Dtspkg.dll
   19-Jun-2004  00:52  2000.80.952.0    528,960  Dtspump.dll
   19-Jun-2004  00:52  2000.80.952.0  1,557,052  Dtsui.dll
   19-Jun-2004  00:52  2000.80.952.0    639,552  Dtswiz.dll
   10-Oct-2003  18:48                   747,927  Instdist.sql
   10-Oct-2003  18:48                     1,581  Inst_repl_hotfix.sql
   19-Jun-2004  00:51  2000.80.952.0    352,828  Isqlw.exe
   19-Jun-2004  00:51  2000.80.952.0     82,492  Itwiz.exe
   19-Jun-2004  00:52  2000.80.952.0     90,692  Msgprox.dll
   19-May-2004  23:43  8.11.40209.0     209,408  Mssdi98.dll
   19-Jun-2004  00:52  2000.80.952.0     62,024  Odsole70.dll
   19-Jun-2004  00:52  2000.80.952.0     25,144  Opends60.dll
   19-Jun-2004  00:51  2000.80.952.0     57,904  Osql.exe
   19-Jun-2004  00:52  2000.80.952.0    279,104  Pfutil80.dll
   10-Oct-2003  18:37                   550,780  Procsyst.sql
   08-Apr-2004  21:42                    12,305  Qfe469315.sql
   08-Apr-2004  21:42                    19,195  Qfe469571.sql
   15-Jun-2004  18:11                 1,105,167  Replmerg.sql
   19-Jun-2004  00:52  2000.80.952.0    221,768  Replprov.dll
   19-Jun-2004  00:52  2000.80.952.0    307,784  Replrec.dll
   15-Jun-2004  15:43  2000.80.952.0    159,813  Replres.rll
   10-Oct-2003  18:48                 1,087,150  Replsys.sql
   10-Oct-2003  18:48                   986,603  Repltran.sql
   19-Jun-2004  00:52  2000.80.952.0    287,304  Rinitcom.dll
   19-Jun-2004  00:52  2000.80.952.0     78,416  Sdiclnt.dll
   19-Jun-2004  00:52  2000.80.952.0     66,112  Semmap.dll
   19-Jun-2004  00:52  2000.80.952.0     57,916  Semnt.dll
   19-Jun-2004  00:52  2000.80.952.0    492,096  Semobj.dll
   15-Jun-2004  16:18  2000.80.952.0    172,032  Semobj.rll
   19-Jun-2004  00:51  2000.80.952.0     53,832  Snapshot.exe
   12-Mar-2004  03:10                   117,834  Sp3_serv_uni.sql
   19-Jun-2004  00:51  2000.80.952.0     28,672  Sqlagent.dll
   19-Jun-2004  00:51  2000.80.952.0    311,872  Sqlagent.exe
   19-Jun-2004  00:51  2000.80.952.0    168,001  Sqlakw32.dll
   19-Jun-2004  00:52  2000.80.952.0     33,344  Sqlctr80.dll
   19-Jun-2004  00:52  2000.80.952.0  4,215,360  Sqldmo.dll
   19-Jun-2004  00:51                    25,172  Sqldumper.exe
   15-Jun-2004  15:26  2000.80.952.0     28,672  Sqlevn70.rll
   19-Jun-2004  00:52  2000.80.952.0    180,792  Sqlmap70.dll
   19-Jun-2004  00:52  2000.80.952.0    188,992  Sqlmmc.dll
   15-Jun-2004  16:25  2000.80.952.0    479,232  Sqlmmc.rll
   19-Jun-2004  00:52  2000.80.952.0    401,984  Sqlqry.dll
   19-Jun-2004  00:52  2000.80.952.0     57,920  Sqlrepss.dll
   19-Jun-2004  00:52  2000.80.952.0  7,581,777  Sqlservr.exe
   19-Jun-2004  00:52  2000.80.952.0    590,396  Sqlsort.dll
   19-Jun-2004  00:52  2000.80.952.0     45,644  Sqlvdi.dll
   19-Jun-2004  00:52  2000.80.952.0    106,588  Sqsrvres.dll
   19-Jun-2004  00:52  2000.80.952.0     33,340  Ssmslpcn.dll
   19-Jun-2004  00:52  2000.80.952.0     82,492  Ssnetlib.dll
   19-Jun-2004  00:52  2000.80.952.0     25,148  Ssnmpn70.dll
   19-Jun-2004  00:52  2000.80.952.0    123,456  Stardds.dll
   19-Jun-2004  00:52  2000.80.952.0    158,240  Svrnetcn.dll
   19-Jun-2004  00:51  2000.80.952.0     76,416  Svrnetcn.exe
   19-Jun-2004  00:52  2000.80.952.0     53,808  Ums.dll
   19-Jun-2004  00:52  2000.80.952.0     98,872  Xpweb70.dll

note En raison des dépendances de fichiers, la fonctionnalité qui contient ces fichiers ou correctif plus récent peut également contenir des fichiers supplémentaires.

Statut

Microsoft a confirmé que c'est un problème dans les produits Microsoft répertoriés dans la section « S'applique à ». Ce problème a été corrigé dans Microsoft SQL Server 2000 Service Pack 4.

Plus d'informations

Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
824684 Description de la terminologie standard utilisée pour décrire les mises à jour logicielles Microsoft

Procédure pour reproduire le problème

  1. Dans SQL Server, exécuter le code suivant pour configurer la base de données, les tables et la réplication de fusion :
    create database cesimplerepro
    GO
    use cesimplerepro
    GO
    create table main (mainid int not null primary key, id_user int)
    GO
    create table child (childid int not null primary key, id_user int, mainid int foreign key references main(mainid))
    GO
    insert into main (mainid, id_user) values (3, 5)
    GO
    insert into child (childid, id_user, mainid) values (1, 10, 3)
    GO
    exec sp_replicationdboption @dbname = N'cesimplerepro', @optname = N'merge publish', @value = N'true'
    GO
    -- Add the merge publication.
    exec sp_addmergepublication @publication = N'cesimplerepro',  @retention = 14, @sync_mode = N'character', @allow_push = N'true', @allow_pull = N'true', @allow_anonymous = N'true', @enabled_for_internet = N'false', @centralized_conflicts = N'true', @dynamic_filters = N'true', @snapshot_in_defaultfolder = N'true', @compress_snapshot = N'false', @ftp_port = 21, @ftp_login = N'anonymous', @conflict_retention = 14, @keep_partition_changes = N'true', @allow_subscription_copy = N'false', @allow_synctoalternate = N'false',@add_to_active_directory = N'false', @max_concurrent_merge = 0, @max_concurrent_dynamic_snapshots = 0
    GO
    exec sp_addpublication_snapshot @publication = N'cesimplerepro',@frequency_type = 4, @frequency_interval = 1, @frequency_relative_interval = 1, @frequency_recurrence_factor = 0, @frequency_subday = 1, @frequency_subday_interval = 5, @active_start_date = 0, @active_end_date = 0, @active_start_time_of_day = 500, @active_end_time_of_day = 235959
    GO
    exec sp_grant_publication_access @publication = N'cesimplerepro', @login = N'BUILTIN\Administrators'
    GO
    exec sp_grant_publication_access @publication = N'cesimplerepro', @login = N'distributor_admin'
    GO
    exec sp_grant_publication_access @publication = N'cesimplerepro', @login = N'sa'
    GO
    -- Add the merge articles.
    exec sp_addmergearticle @publication = N'cesimplerepro', @article = N'main', @source_owner = N'dbo', @source_object = N'main', @type = N'table', @description = null, @column_tracking = N'true', @pre_creation_cmd = N'drop', @creation_script = null, @schema_option = 0x000000000000CFF1, @article_resolver = null, @subset_filterclause = N'ID_User = 5', @vertical_partition = N'false', @destination_owner = N'dbo', @auto_identity_range = N'false', @verify_resolver_signature = 0, @allow_interactive_resolver = N'false', @fast_multicol_updateproc = N'true', @check_permissions = 0
    GO
    exec sp_addmergearticle @publication = N'cesimplerepro', @article = N'child', @source_owner = N'dbo', @source_object = N'child', @type = N'table', @description = null, @column_tracking = N'true', @pre_creation_cmd = N'drop', @creation_script = null, @schema_option = 0x000000000000CFF1, @article_resolver = null, @subset_filterclause = null, @vertical_partition = N'false', @destination_owner = N'dbo', @auto_identity_range = N'false', @verify_resolver_signature = 0, @allow_interactive_resolver = N'false', @fast_multicol_updateproc = N'true', @check_permissions = 0
    GO
    -- Add the article subset filter.
    exec sp_addmergefilter @publication = N'cesimplerepro', @article = N'Child', @filtername = N'child_main', @join_articlename = N'main', @join_filterclause = N'main.mainid = Child.mainid', @join_unique_key = 0
    GO
    EXEC sp_addmergefilter @publication = N'cesimplerepro », @ article = N'Child », @ NomFiltre = N 'child_main », @ join_articlename = N'main », @ join_filterclause = N'main.mainid = Child.mainid », @ join_unique_key = 0 GO
  2. Exécuter l'agent de capture instantanée et téléchargez l'instantané à un abonné SQL Server CE.
  3. Exécuter les requêtes suivantes sur l'abonné :
    update main set id_user = 0  -- Take this row out of the partition.
    update child set id_user = 10 -- This is a dummy update on the child table.
    
  4. Synchroniser les modifications à l'éditeur. Ne Notez que les abonnés SQL Server CE aucune ligne de la table principale et la table enfant, car le filtre est plus remplie.
  5. Exécuter la requête suivante dans Publisher :
    Update main set id_user = 5 -- Satisfies the filter clause again. The row will get into partition on the next synch.
    La ligne obtiennent dans partition de la synchronisation suivante.
  6. Synchroniser les modifications à SQL Server CE abonné.

    Sur l'abonné, vous verrez une ligne pour la table principale. Ce comportement est correct. Mais vous ne voyez pas les lignes de la table enfant. Ceci est incorrect.

Propriétés

Numéro d'article: 867879 - Dernière mise à jour: vendredi 2 novembre 2007 - Version: 2.3
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft SQL Server 2000 Édition Développeur
  • Microsoft SQL Server 2000 Standard
  • Microsoft SQL Server 2000 Édition Entreprise
  • Microsoft SQL Server 2000 Édition Personelle
  • Microsoft SQL Server 2000 Workgroup Edition
  • Microsoft SQL Server 2000 Desktop Engine (Windows)
  • Microsoft SQL Server 2000 Enterprise Edition 64-bit
Mots-clés : 
kbmt kbsqlserv2000presp4fix kbfix kbbug kbhotfixserver kbqfe KB867879 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 867879
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com