KB2530913-FIX: "error: 17066" se produce cuando se crea un índice no agrupado particionado en SQL Server 2008 R2 si se usa un plan de ejecución paralelo

Se aplica a: Microsoft SQL Server 2008 R2 Service Pack 1SQL Server 2008 R2

Microsoft distribuye las soluciones de Microsoft SQL Server 2008 R2 como un archivo que se puede descargar. Debido a que las correcciones son acumulativas, cada versión nueva contiene todas las revisiones y todas las revisiones de seguridad incluidas en la versión anterior de SQL Server 2008 R2.

Síntomas


Cuando utiliza un plan de ejecución paralela para intentar crear un índice no agrupado particionado en Microsoft SQL Server 2008 R2, se produce un problema que tiene los siguientes síntomas:
  • En el registro de errores de SQL Server se registran los siguientes mensajes de error:
    <fecha> SPID<n> error: 17066, gravedad: 16, estado: 1. <de fecha y hora> SPID<n> SQL Server Assertion: archivo: <sobuild. c>, line = 3392 error de aserción = ' CompareRow (rightPageRow, * m_pSEBindings, keyCnt, * pHobtAccess, PAGE_LEAF_LEVEL) '. Este error puede estar relacionado con el tiempo. Si el error persiste después de volver a ejecutar la instrucción, Use DBCC CHECKDB para comprobar la integridad estructural de la base de datos o reinicie el servidor para asegurarse de que las estructuras de datos en memoria no están dañadas.
  • El plan de ejecución paralela no crea el índice.
  • La aplicación cliente que envía la instrucción Create index puede recibir una excepción de SQL Server.
  • La conexión entre el cliente y el servidor está cerrada.
Nota
  • Un plan de ejecución paralela podría usarse en las situaciones siguientes:
    • Establezca la opción de sugerencia de consulta MAXDOP en un valor mayor que 1.
    • Establezca la opción grado máximo de paralelismo en 0 o en un valor mayor que 1 en configuración del servidor.
  • Este problema no se produce en Microsoft SQL Server 2008.

Causa


Este problema se produce porque dos o más subprocesos paralelos de SQL Server realizan la creación de índices en intervalos de partición superpuestos.

Resolución


Información sobre la actualización acumulativa

Service Pack 1 de SQL Server 2008 R2

La corrección para este problema se publicó por primera vez en la actualización acumulativa 1 para SQL Server 2008 R2 Service Pack 1. Para obtener más información acerca de cómo obtener este paquete de actualización acumulativa, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2544793 Paquete de actualización acumulativa 1 para SQL Server 2008 R2 Service Pack 1
Nota Como las compilaciones son acumulativas, cada nueva versión de corrección contiene todas las revisiones y todas las revisiones de seguridad incluidas en la versión anterior de corrección de SQL Server 2008 R2. Le recomendamos que considere la posibilidad de aplicar la versión de corrección más reciente que contenga este Hotfix. Si desea obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2567616 Las compilaciones de SQL Server 2008 R2 que se publicaron después de que se publicó SQL Server 2008 R2 Service Pack 1

SQL Server 2008 R2

La corrección para este problema se publicó por primera vez en la actualización acumulativa 8. Para obtener más información sobre cómo obtener este paquete de actualización acumulativa para SQL Server 2008 R2, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
2534352 Paquete de actualización acumulativa 8 para SQL Server 2008 R2
Nota Como las compilaciones son acumulativas, cada nueva versión de corrección contiene todas las revisiones y todas las revisiones de seguridad incluidas en la versión anterior de corrección de SQL Server 2008 R2. Le recomendamos que considere la posibilidad de aplicar la versión de corrección más reciente que contenga este Hotfix. Si desea obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
981356 Las compilaciones de SQL Server 2008 R2 que se lanzaron después de publicar SQL Server 2008 R2

Solución alternativa


Para resolver este problema, utilice uno de los métodos siguientes:
  • Establezca la opción grado máximo de paralelismo en la configuración del servidor antes de crear el índice.
  • Establezca la opción de sugerencia de consulta MAXDOP en 1 cuando cree el índice.

Estado


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

Más información


Para obtener más información sobre la instrucción Create index , visite el siguiente sitio web de MSDN: Para obtener más información sobre la instrucción Create Partition function , visite el siguiente sitio web de MSDN: