REVISIÓN: El agente de distribución puede fallar después de agregar o quitar una columna para un artículo publicado

IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.

Haga clic aquí para ver el artículo original (en inglés): 837231
Este artículo se ha archivado. Se ofrece "tal cual" y no se volverá a actualizar.
Nº de error: 471158 (SQL Server 8.0)
Las revisiones de Microsoft SQL Server 2000 se distribuyen como un archivo descargable. Como las revisiones son acumulativas, cada versión nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad se incluían con la anterior de SQL Server 2000.
Síntomas
Cuando agrega una columna a un artículo publicado o quitar una columna de un artículo publicado, y el artículo está participando en una replicación transaccional, el agente de distribución correspondiente no se ejecuten correctamente. Puede aparecer un mensaje de error similar al siguiente:
Comilla antes de la cadena de caracteres ' Column Name '.
Este problema puede ocurrir cuando se cumplen las condiciones siguientes:
  • El artículo está configurado para utilizar comandos SQL para replicar el comando INSERT, el comando UPDATE o el comando DELETE en los suscriptores correspondientes.
  • Aún no se aplican los cambios, como, por ejemplo, inserciones, actualizaciones o eliminaciones, que se realizan en el artículo en el publicador en los suscriptores.
Solución

Información de Service Pack

Para resolver este problema, consiga el Service Pack más reciente para Microsoft SQL Server 2000. Para obtener información adicional, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
290211Cómo obtener el Service Pack más reciente de SQL Server 2000

Información de revisiones

La versión en inglés de este hotfix tiene los atributos de archivo enumerados en la siguiente tabla u otros posteriores. Las fechas y horas de estos archivos aparecen en la hora universal coordinada (UTC). La información de los archivos se convertirá a la hora local cuando la vea. Para averiguar la diferencia entre hora UTC y la hora local, utilice la ficha zona horaria de la herramienta fecha y hora en el panel de control.
   Date         Time   Version        Size       File name    ---------------------------------------------------------    31-May-2003  18:45  2000.80.818.0     78,400  Console.exe    28-Oct-2003  04:21  2000.80.873.0    315,968  Custtask.dll    30-Jan-2004  16:29  2000.80.911.0     33,340  Dbmslpcn.dll    25-Apr-2003  02:12                   786,432  Distmdl.ldf    25-Apr-2003  02:12                 2,359,296  Distmdl.mdf    30-Jan-2003  01:55                       180  Drop_repl_hotfix.sql    12-Sep-2003  03:26  2000.80.859.0  1,905,216  Dtspkg.dll    26-Aug-2003  20:16  2000.80.854.0    528,960  Dtspump.dll    23-Jun-2003  22:40  2000.80.837.0  1,557,052  Dtsui.dll    23-Jun-2003  22:40  2000.80.837.0    639,552  Dtswiz.dll    24-Apr-2003  02:51                   747,927  Instdist.sql    03-May-2003  01:56                     1,581  Inst_repl_hotfix.sql    30-Jan-2004  16:29  2000.80.911.0     90,692  Msgprox.dll    01-Apr-2003  02:07                     1,873  Odsole.sql    30-Jan-2004  16:29  2000.80.911.0     62,024  Odsole70.dll    30-Jan-2004  16:29  2000.80.911.0     25,144  Opends60.dll    30-Jan-2004  16:28  2000.80.911.0     57,904  Osql.exe    02-Apr-2003  23:15  2000.80.797.0    279,104  Pfutil80.dll    04-Aug-2003  18:17                   550,780  Procsyst.sql    12-Sep-2003  00:37                    12,305  Qfe469315.sql    22-May-2003  22:57                    19,195  Qfe469571.sql    30-Jan-2004  01:16                 1,090,380  Replmerg.sql    30-Jan-2004  16:29  2000.80.911.0    221,768  Replprov.dll    30-Jan-2004  16:29  2000.80.911.0    307,784  Replrec.dll    29-Jan-2004  23:24  2000.80.911.0    159,813  Replres.rll    06-Sep-2003  00:00                 1,087,150  Replsys.sql    13-Aug-2003  16:28                   986,603  Repltran.sql    30-Jan-2004  16:29  2000.80.911.0    287,304  Rinitcom.dll    30-Jan-2004  16:29  2000.80.911.0     57,916  Semnt.dll    29-Jul-2003  20:13  2000.80.819.0    492,096  Semobj.dll    31-May-2003  18:27  2000.80.818.0    172,032  Semobj.rll    02-Jan-2004  19:42  2000.80.904.0     53,832  Snapshot.exe    09-Dec-2003  20:07                   117,834  Sp3_serv_uni.sql    05-Feb-2004  00:46  2000.80.913.0     28,672  Sqlagent.dll    05-Feb-2004  00:47  2000.80.913.0    311,872  Sqlagent.exe    19-Feb-2004  18:02  2000.80.916.0    168,001  Sqlakw32.dll    30-Jan-2004  16:29  2000.80.911.0  4,215,360  Sqldmo.dll    07-Apr-2003  17:44                    25,172  Sqldumper.exe    29-Jan-2004  23:17  2000.80.911.0     28,672  Sqlevn70.rll    05-Mar-2004  17:13  2000.80.922.0    180,792  Sqlmap70.dll    03-Sep-2003  02:56  2000.80.857.0    188,992  Sqlmmc.dll    02-Sep-2003  23:03  2000.80.857.0    479,232  Sqlmmc.rll    22-Oct-2003  00:08  2000.80.871.0    401,984  Sqlqry.dll    30-Jan-2004  16:29  2000.80.911.0     57,920  Sqlrepss.dll    09-Mar-2004  19:54  2000.80.922.0  7,614,545  Sqlservr.exe    30-Jan-2004  16:29  2000.80.911.0    590,396  Sqlsort.dll    30-Jan-2004  16:29  2000.80.911.0     45,644  Sqlvdi.dll    30-Jan-2004  16:29  2000.80.911.0    106,588  Sqsrvres.dll   30-Jan-2004  16:29  2000.80.911.0     33,340  Ssmslpcn.dll   30-Jan-2004  16:29  2000.80.911.0     82,492  Ssnetlib.dll    30-Jan-2004  16:29  2000.80.911.0     25,148  Ssnmpn70.dll    28-Oct-2003  04:21  2000.80.873.0    123,456  Stardds.dll    30-Jan-2004  16:29  2000.80.911.0    158,240  Svrnetcn.dll    30-Jan-2004  16:29  2000.80.911.0     76,416  Svrnetcn.exe    30-Apr-2003  23:52  2000.80.816.0     45,132  Ums.dll    30-Jan-2004  16:29  2000.80.911.0     98,872  Xpweb70.dll
Nota Debido a la interdependencia entre archivos, el más reciente revisión o característica que contiene estos archivos quizás contenga también archivos adicionales.
Solución
Para evitar este problema, debe configurar el artículo para utilizar los procedimientos almacenados para replicar el comando INSERT, el comando UPDATE o el comando DELETE en los suscriptores correspondientes. Para ello, siga estos pasos en el publicador:
  1. Ejecute el código siguiente para quitar todas las suscripciones para el artículo:
    USE Publication DatabaseGOEXEC sp_dropsubscription 	@publication=N'Publication Name', 	@subscriber = N'all', 	@article = N'Article Name', 	@destination_db = N'all'GO
  2. Ejecute el código siguiente para quitar el artículo de la publicación transaccional actual:
    USE Publication DatabaseGOEXEC sp_droparticle 	@publication = N'Publication Name', 	@article = 'Article Name',	@force_invalidate_snapshot = 1GO
  3. Agregar el artículo a la publicación transaccional actual para que el artículo utiliza procedimientos almacenados para replicar el comando INSERT, el comando UPDATE o el comando DELETE en los suscriptores correspondientes. To do this, run the following code:
    USE Publication DatabaseGOEXEC sp_addarticle 	@publication = N'Publication Name', 	@article = N'Article Name', 	@source_owner = N'dbo', 	@source_object = N'Source Table Name', 	@destination_table = N'Destination Table Name', 	@type = N'logbased', 	@creation_script = null, 	@description = null, 	@pre_creation_cmd = N'drop', 	@schema_option = 0x00000000000000F3, 	@status = 16, 	@vertical_partition = N'false', 	@ins_cmd = N'sp_MSins_Article Name', 	@del_cmd = N'sp_MSdel_Article Name', 	@upd_cmd = N'sp_MSupd_Article Name', 	@filter = null, 	@sync_object = null, 	@auto_identity_range = N'false'GO
    Note Make sure that you modify the following parameters before you run the Transact-SQL statements:
    • @ publication : nombre de la publicación actual
    • @ article : nombre del nuevo artículo
    • @ source_object : nombre de la tabla subyacente representada por el nuevo artículo
    • destination_table @ : nombre de la tabla de destino que se crearán en el suscriptor
    • @ ins_cmd : CALL sp_MSins_ Article Name
    • @ del_cmd : CALL sp_MSdel_ Article Name
    • @ upd_cmd : MCALL sp_MSupd_ Article Name
    • @ force_invalidate_snapshot : 1, si ya se generó una instantánea para la publicación
    Además, si el artículo contiene una columna de identidad y desea que SQL Server para administrar el control de intervalo de identidad, debe establecer el parámetro @ auto_identity_range en true .
  4. Añadir suscripciones al artículo que se agrega a la publicación transaccional:
    • Para cada suscripción de inserción que se suscribe a la publicación transaccional actual, ejecutar instrucciones de Transact-SQL que son similares al siguiente en el Analizador de consultas de SQL en el publicador en la base de datos de publicación:
      USE Publication DatabaseGOEXEC sp_addsubscription 	@publication = N'Publication Name', 	@article = N'Article Name', 	@subscriber = N'Subscriber Name', 	@destination_db = N'Destination Database', 	@sync_type = N'automatic', 	@update_mode = N'read only', 	@offloadagent = 0, 	@dts_package_location = N'distributor'GO
      Nota Asegúrese de que modifica los parámetros siguientes antes de ejecutar las instrucciones de Transact-SQL:
      • @ publication : nombre de la publicación actual
      • @ article : nombre del nuevo artículo
      • @ subscriber : nombre del suscriptor
      • destination_db @ : nombre de la base de datos de destino que contiene la suscripción
      Además, asegúrese de que no se modifican los parámetros que pueden cambiar las propiedades existentes de la suscripción.
    • Para agregar las suscripciones a su artículo en las suscripciones de extracción para todos los suscriptores existentes a la publicación transaccional, ejecute las instrucciones Transact-SQL que son similares al siguiente en el Analizador de consultas de SQL en el publicador en la base de datos de publicación:
      USE Publication DatabaseGOEXEC sp_refreshsubscriptions 	@publication = N'Publication Name'GO
  5. Ejecutar al agente de instantáneas que corresponde a la publicación transaccional actual en el distribuidor.
  6. Ejecute al agente de distribución que corresponde a cada suscripción que se suscribe a la publicación transaccional actual.
Estado
Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados en la sección "La información de este artículo se refiere a:".

Este problema se corrigió por primera vez en Pack 4 de Microsoft SQL Server 2000.
Referencias
Para obtener información adicional, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
824684Descripción de la terminología estándar utilizada para describir las actualizaciones de software de Microsoft

Advertencia: este artículo se tradujo automáticamente

Propiedades

Id. de artículo: 837231 - Última revisión: 01/17/2015 07:03:09 - Revisión: 2.3

Microsoft SQL Server 2000 Developer Edition, Microsoft SQL Server 2000 Standard Edition, Microsoft SQL Server 2000 Enterprise Edition, Microsoft SQL Server 2000 Personal Edition, Microsoft SQL Server 2000 Workgroup Edition, Microsoft SQL Server 2000 Desktop Engine (Windows), Microsoft SQL Server 2000 Enterprise Edition 64-bit

  • kbnosurvey kbarchive kbmt kbhotfixserver kbqfe kbqfe kbsqlserv2000presp4fix kbfix kbbug KB837231 KbMtes
Comentarios
ERROR: at System.Diagnostics.Process.Kill() at Microsoft.Support.SEOInfrastructureService.PhantomJS.PhantomJSRunner.WaitForExit(Process process, Int32 waitTime, StringBuilder dataBuilder, Boolean isTotalProcessTimeout)