REVISIÓN: Recibe mensajes de error al realizar un llenado de un índice de texto grande en SQL Server 2008 o en SQL Server 2008 R2

Seleccione idioma Seleccione idioma
Id. de artículo: 963659 - Ver los productos a los que se aplica este artículo
Microsoft distribuye correcciones de Microsoft SQL Server 2008 como un archivo descargable. Dado que las revisiones son acumulativas, cada versión nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyen con la anterior de SQL Server de 2008.
Expandir todo | Contraer todo

En esta página

Síntomas

Síntoma 1

Cuando realice una población de un índice de texto grande en Microsoft SQL Server 2008 o en Microsoft SQL Server 2008 R2, puede recibir un mensaje de error en el archivo de registro de texto completo. El número de veces que este mensaje de error se registra depende del tamaño del lote menos uno. Por ejemplo, en un equipo de 32 bits, el tamaño del lote es 1.000, por lo que se registra el error 999 veces. El mensaje de error similar al siguiente:
Error ' 0x8004cb04: La lista de palabras en memoria está dañada. Esto es debido a un defecto de filtro, separador de palabras u otros componentes de indización.' se ha producido durante el llenado de índice de texto completo para la tabla o vista indizada ' [smarsh].[dbo].[ArchiveMsgs]' (tabla o vista indizada ID ' 160719625', base de datos ID ' 7'), valor de clave de texto '291484087'. Se intentará volver a indizar en él.
Después de recibir este mensaje de error, también puede recibir el siguiente mensaje de error para el tamaño del lote menos uno:
<Date> <Time>Error de spid28s '0x80040e28' se ha producido durante el llenado de índice de texto completo para la tabla o vista indizada ' [smarsh].[dbo].[ArchiveMsgs]' (tabla o vista indizada ID ' 160719625', base de datos ID ' 7'), valor de clave de texto '199598211'. Se intentará volver a indizar en él.</Time></Date>
Después de recibir este mensaje de error, también puede recibir el siguiente mensaje de error para el tamaño del lote menos uno:
<Date> <Time>Error de spid26s ' 0x80043630: el proceso de demonio de filtro MSFTEFD agotado por una razón desconocida. Esto puede indicar un error en un filtro, separador de palabras o controlador de protocolo.' se ha producido durante el llenado de índice de texto completo para la tabla o vista indizada ' [smarsh].[dbo].[ArchiveMsgs]' (tabla o vista indizada ID ' 160719625', base de datos ID ' 7'), valor de clave de texto '14304130'. Se intentará volver a indizar en él. </Time></Date>
Síntoma 2

Además, puede observar que el proceso de FDHOST.exe está funcionando mal. Cuando intenta ejecutar una consulta de texto o realizar un llenado de texto, recibirá el siguiente mensaje al cliente.
Msj 30053, nivel 16, estado 102, línea 1
Separación de palabras agotado por la cadena de consulta de texto completo. Esto puede ocurrir si el separador de palabras tardó mucho tiempo en procesar la cadena de consulta de texto completo, o si un gran número de consultas se ejecuta en el servidor. Intente ejecutar la consulta de nuevo bajo una carga más clara.
Al examinar los registros SQLFT * para este catálogo, verá este mensaje de error:
Error '0 x 80004005' se ha producido durante el llenado de índice de texto completo para la tabla o vista indizada ' [DBNAME].[dbo].[NombreTabla]' (tabla o vista indizada ID ' 1204001724', base de datos ID ' 5'), valor de clave de texto '4'. Se intentará volver a indizar en él.
Al examinar el registro de errores de SQL, verá este mensaje de error:
Error: 30089, gravedad: 17, estado: 1.
El proceso de host (FDHost) del demonio de filtro de texto completo se detuvo anormalmente. Esto puede ocurrir si un componente lingüístico configurado incorrectamente o no funciona correctamente, como un separador de palabras, lematizador o filtro ha provocado un error irrecuperable durante el proceso de indización o consulta de texto completo. El proceso se reiniciará automáticamente.

Causa

Este problema se produce debido a un error en la comunicación entre el proceso Sqlservr.exe y el proceso de Fdhost.exe. Cuando se envían lotes del proceso Sqlservr.exe al proceso de Fdhost.exe, a veces la memoria compartida saliente (OSM), que es la memoria compartida de Sqlservr.exe a Fdhost.exe, tiene espacio suficiente para ajustarlo a la columna siguiente de un documento. Cuando esto ocurre, el proceso Sqlservr.exe envía un mensaje para notificar a la Fdhost.exe procesos todos los datos existentes en la OSM. Mientras el proceso de Fdhost.exe está procesando datos, la memoria compartida entrante (ISM), que es la memoria compartida de Fdhost.exe a Sqlservr.exe, puede ser completa. En esta situación, el proceso de Fdhost.exe envía un mensaje de "rebobinar" al proceso Sqlservr.exe. Este mensaje solicita que el proceso de Sqlservr.exe a enviar el último documento de la primera columna. Sin embargo, cuando se inicia el proceso Sqlservr.exe volver a enviar el documento, se inicia de la columna 2 en lugar de la columna 1. Esto hace que los mensajes de error que se mencionan en la sección "Síntomas".

Solución

Información sobre la actualización acumulativa

SQL Server 2008 R2 Service Pack 2

La solución a este problema fue lanzada en actualización acumulativa 3. Para obtener más información acerca de cómo obtener este paquete de actualización acumulativa para SQL Server 2008 R2 Service Pack 2, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2754552 Paquete de actualización acumulativa 3 para SQL Server 2008 R2 Service Pack 2
Nota Como las compilaciones son acumulativas, cada nueva versión de revisión contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyen con la anterior SQL Server 2008 R2 Service Pack 2. Se recomienda que considere la posibilidad de aplicar la versión más reciente de revisión que contenga esta revisión. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2730301 SQL Server 2008 R2 compilaciones que se publicaron después del lanzamiento de SQL Server 2008 R2 Service Pack 2

SQL Server 2008

La solución a este problema se publicó en primer lugar en la actualización acumulativa 4 para la versión de lanzamiento de SQL Server 2008. Para obtener más información acerca de cómo obtener este paquete de actualización acumulativa para SQL Server 2008, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
963036 Paquete de actualización acumulativa 4 para SQL Server 2008
Nota Como las compilaciones son acumulativas, cada nueva versión de revisión contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyen con la anterior de SQL Server de 2008. Se recomienda que considere la posibilidad de aplicar la versión más reciente de revisión que contenga esta revisión. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
956909 El SQL Server de 2008 de compilaciones que se publicaron después del lanzamiento de SQL Server 2008

SQL Server 2008 Service Pack 1

La solución a este problema fue lanzada en la actualización acumulativa 1 SQL Server 2008 Service Pack 1. Para obtener más información acerca de cómo obtener este paquete de actualización acumulativa para SQL Server 2008, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
969099 Paquete de actualización acumulativa 1 SQL Server 2008 Service Pack 1
Nota Como las compilaciones son acumulativas, cada nueva versión de revisión contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyen con la anterior de SQL Server de 2008. Se recomienda que considere la posibilidad de aplicar la versión más reciente de revisión que contenga esta revisión. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
970365 El SQL Server de 2008 de compilaciones que se publicaron después del lanzamiento de SQL Server 2008 Service Pack 1

Solución

Para evitar este problema, aumente el tamaño ISM. Para ello, configure la variable ISM_Size con el procedimiento almacenado sp_fulltext_service .

Para mostrar el valor actual:
sp_fulltext_service 'ism_size'

Para cambiar el valor a 16:
sp_fulltext_service ' ism_size',@value=16

Nota: Debe reiniciar el servicio de SQL Server para que este cambio surta efecto.

Estado

Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados en la sección "Se refiere a:".

Más información

Este problema no impide que la población de finalización. El índice de texto tiene una lógica de reintento integrado que seguirá intentando la entrada error hasta que lo logre. Por lo tanto, se pueden ignorar los mensajes de error. Los únicos conocidos posibles efectos secundarios negativos son que puede tardar más de lo normal para la población completar y el crecimiento del registro de texto aumenta significativamente por informar del error.

La lógica de reintento en el código fuente hace que un llenado de éxito eventual sin daños en el índice, a pesar del mensaje de error que indica posibles errores.

Si está ejecutando en el síntoma #2 se describe más arriba, a continuación, full-text población o las consultas de búsqueda no funcionará, porque el componente FDHOST no está en un estado correcto para la función y necesita aplicar esta actualización acumulativa.

Más información sobre el paquete de actualización acumulativa 4 para SQL Server 2008

Para obtener más información acerca de los archivos que se modifican y para obtener información acerca de cualquier requisito previo para aplicar el paquete de actualización acumulativa que contiene la revisión que se describe en este artículo de Microsoft Knowledge Base, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
963036 Paquete de actualización acumulativa 4 para SQL Server 2008

Obtener más información sobre el paquete de actualización acumulativa 1 SQL Server 2008 Service Pack 1

Para obtener más información acerca de los archivos que se modifican y para obtener información acerca de cualquier requisito previo para aplicar el paquete de actualización acumulativa que contiene la revisión que se describe en este artículo de Microsoft Knowledge Base, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
969099 Paquete de actualización acumulativa 1 SQL Server 2008 Service Pack 1

Referencias

Para obtener más información acerca de la lista de compilaciones que están disponibles después del lanzamiento de SQL Server 2008, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
956909El SQL Server de 2008 de compilaciones que se publicaron después del lanzamiento de SQL Server 2008
Para obtener más información sobre el modelo de servicio Incremental para SQL Server, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
935897Un modelo Incremental de servicio está disponible en el equipo de SQL Server para entregar revisiones problemas detectados
Para obtener más información acerca del esquema de nomenclatura para las actualizaciones de SQL Server, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
822499Nuevo esquema de nomenclatura para los paquetes de actualización de software de Microsoft SQL Server
Para obtener más información acerca de la terminología de la actualización de software, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
824684 Descripción de la terminología estándar que se utiliza para describir las actualizaciones de software de Microsoft

Propiedades

Id. de artículo: 963659 - Última revisión: lunes, 15 de octubre de 2012 - Versión: 3.0
La información de este artículo se refiere a:
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Workgroup
  • Microsoft SQL Server 2008 R2 Datacenter
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Web
  • Microsoft SQL Server 2008 R2 Standard
Palabras clave: 
kbexpertiseadvanced kbsurveynew kbqfe kbfix kbmt KB963659 KbMtes
Traducción automática
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): 963659

Enviar comentarios

 

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