REVISIÓN: "Error: 17066" se produce cuando se crea un índice no agrupado con particiones en SQL Server 2008 R2 si se utiliza un plan de ejecución en paralelo

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

Microsoft distribuye correcciones de Microsoft SQL Server 2008 R2 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 que se incluyeron con la anterior de SQL Server 2008 R2.

Síntomas


Cuando se utiliza un plan de ejecución en paralelo para intentar crear un índice no agrupado con particiones en Microsoft SQL Server 2008 R2, se produce algún problema que tiene los siguientes síntomas:
  • Los siguientes mensajes de error se registran en el registro de errores de SQL Server:
    spid < hora > < n > Error: 17066, gravedad: 16, estado: 1. spid < hora > < n > SQL Server aserción: archivo: < sobuild.c >, línea = 3392 error de aserción = ' CompareRow (rightPageRow, * m_pSEBindings, keyCnt, * pHobtAccess, PAGE_ LEAF_LEVEL)'. Este error puede ser relacionados con el tiempo. Si el error persiste después de volver a ejecutar la instrucción, utilice 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 paralelo no crea el índice.
  • La aplicación de cliente que envía la instrucción CREATE INDEX puede recibir una excepción de SQL Server.
  • Se cierra la conexión entre el cliente y el servidor.
Nota
  • Un plan de ejecución paralelo podría utilizarse en las siguientes situaciones:
    • Establezca la opción de sugerencia de consulta MAXDOP en un valor mayor que 1.
    • Establecer la opción Max Degree of Parallelism a 0 o a un valor mayor que 1 en configuración del servidor.
  • Este problema no ocurre en Microsoft SQL Server 2008.

Causa


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

Solución


Información sobre la actualización acumulativa

Service Pack 1 de SQL Server 2008 R2

La corrección para este problema se publicó primero 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 de SQL Server 2008 R2 Service Pack 1
Nota Como las compilaciones son acumulativas, cada versión de corrección nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyeron con la anterior de SQL Server 2008 R2. Le recomendamos que considere aplicar la versión más reciente de revisión 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 Compilaciones de SQL Server 2008 R2 que se publicaron después del lanzamiento de 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 acerca de 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 versión de corrección nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyeron con la anterior de SQL Server 2008 R2. Le recomendamos que considere aplicar la versión más reciente de revisión 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 Compilaciones de SQL Server 2008 R2 que se publicaron después del lanzamiento de SQL Server 2008 R2

Solución alternativa


Para resolver este problema, utilice uno de los métodos siguientes:
  • Establecer la opción Max Degree of Parallelism en 1 en la configuración del servidor antes de crear el índice.
  • Establezca la opción de sugerencia de consulta MAXDOP1 al crear 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 acerca de la instrucción CREATE INDEX , visite el siguiente sitio Web MSDN: Para obtener más información acerca de la instrucción CREATE PARTITION FUNCTION , visite el siguiente sitio Web MSDN: